从这里http://nrg19840409.iteye.com/blog/1018573看的axis1.4调用WebService的方法,里面说的第一种方法,调用的时候会出现找不到分派方法异常
解决方法
在设置OperationName时,要new一个QName设置namespace。
public String
findUserInfoByName(String name) {
String result =
null;
try {
String endpoint =
"http://test.com/CrmInfo/CrmInfoPort?wsdl";
Service service =
new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(
new java.net.URL(endpoint));
/**
*注意这里,要设置Namespace
*/
call.setOperationName(
new QName(
"http://server.com/",
"findUserInfoByName"));
call.addParameter(
"arg0", XMLType.XSD_STRING,
ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
result = (String)call.invoke(
new Object[]{name});
System.out.println(
"result is :"+result);
}
catch (Exception e) {
System.err.println(e.toString());
}
return result;
}
转载请注明原文地址: https://ju.6miu.com/read-50002.html