RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
//web service
EndpointReference targetEPR = new EndpointReference("http://192.100.100.198:7001/axis2/services/MyService");
options.setTo(targetEPR);
//
QName opPrint = new QName("http://myservices","GetName");
//
Class[] returnTypes = new Class[] { String.class };
Object obj[] = new Object[] {""};
//
Object[] order = serviceClient.invokeBlocking(opPrint,obj,returnTypes);
System.out.println(order[0]);
//
opPrint = new QName("http://myservices","GetFullName");
returnTypes = new Class[] { String[].class };
obj = new Object[] { "",""};
order = serviceClient.invokeBlocking(opPrint, obj, returnTypes);
http://192.100.100.198:7001/axis2/services/MyService 这个是测试服务器的地址 局域网内 网络一切正常就是执行serviceClient.invokeBlocking 非常慢要10秒钟左右但是本地电脑的http://192.100.100.104:7001/axis2/services/MyService 就很快 1秒之内而且这个是tomcat下是正常的,就是weblogic调试的就很慢tomcat是5.0.28 weblogic是9。2
怀疑过是jdk的问题 可是jdk1.4 1.5编译都试过都不行 都是weblogic下很慢
就是ip 改成本地的就很快 局域网内的就很慢 不知道什么原因 查看了axis2的源代码
也是执行到operationClient.execute(true);很慢 其他都看不出来什么原因,调试不下去了。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货