日期:2014-05-20 浏览次数:20907 次
try
{
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(weburl));
//注释:“http://server.com” 为对方WSDL文件中的Targetnamespace值
call.setOperationName(new QName(targetNamespace,"sendmsg_sis"));//要访问的方法
call.addParameter(new QName(targetNamespace, "paramString1"),//参数一 手机号 对应的参数
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(targetNamespace, "paramString2"),//参数二 座机号 对应的参数
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(targetNamespace, "paramString3"),//参数三 信息内容 对应的参数
XMLType.XSD_STRING, ParameterMode.IN);
call.setReturnType(XMLType.XSD_STRING); //设置返回值类型
Object[] params = new Object[3];//string 自动转成 double; 若 new Double(123) 会出错
params[0] = strMobileNums;
params[1] = strPlaneNums;
params[2] = strContent;
strResult=(String)call.invoke(params);
if (strResult.equals("ERR"))
{
strResult = "ERR:远程通讯服务端返回值为失败";
}
System.out.println(strResult);
} catch (Exception e)
{
e.printStackTrace();
strResult = "ERR:" + e.getMessage();
}