源码是这样的
public class Dongtai { private static String qnameService = "WebServiceBroker"; private static String qnamePort = "WebServiceBrokerEndpointPort"; private static String BODY_NAMESPACE_VALUE = "http://ws4ee.ejb.mhgis.com/types"; private static String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri"; private static String NS_XSD = "http://www.w3.org/2001/XMLSchema"; private static String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
public static void main(String[] args) {
args = new String[] { "http://10.11.1.134:8080/mhgis/services/Version?wsdl" };
System.out.println("Endpoint address dii = " + args[0]);
try {
//创建ServiceFactory实例
ServiceFactory factory = ServiceFactory.newInstance();
//创建Service(利用服务名的Qname)
Service service = factory.createService(new QName(qnameService));
QName port = new QName(qnamePort);
//创建Call对象(使用端点接口的Qname)
Call call = service.createCall(port);
//设置端点的地址和一些Call对象属性
call.setTargetEndpointAddress(args[0]);
call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
call.setProperty(Call.SOAPACTION_URI_PROPERTY, "");
call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
//设置远程调用的返回类型、操作名和参数
QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
call.setReturnType(QNAME_TYPE_STRING);
call.setOperationName(new QName(BODY_NAMESPACE_VALUE, "call"));//这个是什么意思?
call.addParameter("String_1", QNAME_TYPE_STRING, ParameterMode.IN);
//调用call的invoke方法
String[] params = {"aa"};
String[] userinf= {"user","1"};
Object[] object = new Object[3];
object[0] = 1L;
object[1] = params;
object[2] = userinf;
String result = (String) call.invoke(object);
System.out.println(result);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
public class Dongtai { private static String qnameService = "WebServiceBroker"; private static String qnamePort = "WebServiceBrokerEndpointPort"; private static String BODY_NAMESPACE_VALUE = "http://ws4ee.ejb.mhgis.com/types"; private static String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri"; private static String NS_XSD = "http://www.w3.org/2001/XMLSchema"; private static String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
public static void main(String[] args) {
args = new String[] { "http://10.11.1.134:8080/mhgis/services/Version?wsdl" };
System.out.println("Endpoint address dii = " + args[0]);
try {
//创建ServiceFactory实例
ServiceFactory factory = ServiceFactory.newInstance();
//创建Service(利用服务名的Qname)
Service service = factory.createService(new QName(qnameService));
QName port = new QName(qnamePort);
//创建Call对象(使用端点接口的Qname)
Call call = service.createCall(port);
//设置端点的地址和一些Call对象属性
call.setTargetEndpointAddress(args[0]);
call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
call.setProperty(Call.SOAPACTION_URI_PROPERTY, "");
call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
//设置远程调用的返回类型、操作名和参数
QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
call.setReturnType(QNAME_TYPE_STRING);
call.setOperationName(new QName(BODY_NAMESPACE_VALUE, "call"));//这个是什么意思?
call.addParameter("String_1", QNAME_TYPE_STRING, ParameterMode.IN);
//调用call的invoke方法
String[] params = {"aa"};
String[] userinf= {"user","1"};
Object[] object = new Object[3];
object[0] = 1L;
object[1] = params;
object[2] = userinf;
String result = (String) call.invoke(object);
System.out.println(result);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
解决方案 »
- 请教:开发项目,使用springside3.3.4 框架, 部署项目过程.
- JNative指针释放问题
- ssh 模糊查询
- ConnectionException:timed out问题
- 用户希望在多个新闻频道中发布的文章能够同时选择发布到热点新闻中显示,请给出在dotCMS上的实现步骤并给出相关的Velocity代码。
- 自己来看
- Digester 的一个简单问题
- 问一个tomcat+jbuilder的简单问题!!!!!!
- 给我个使用EJB的理由。
- java项目怎么部署到tomcat上让别人远程调用项目的接口
- 请问当前有什么流行的用于WEB 界面的 JSP 标签库,请推荐几个
- 关于Struts 连接池部分标签的含义
String[] params = {"aa"};
String[] userinf= {"user","1"};
Object[] object = new Object[3];
object[0] = 1L;
object[1] = params;
object[2] = userinf;
String result = (String) call.invoke(object);
这个方法(call.invoke())不能传三个参数是什么原因.