public static Vector<Object> execWebService(String url, String nameSpace,
String operationName, String qName, Object[] objValue) {
Service service = new Service();
Vector<Object> v = null;
try {
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName(new QName(nameSpace, operationName));
call.addParameter(new QName(nameSpace, qName),org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.setReturnType(new QName(nameSpace, operationName), Vector.class);
call.setUseSOAPAction(true);
call.setSOAPActionURI(nameSpace + operationName);
v = (Vector<Object>) call.invoke(objValue);
} catch (Exception ex) {
ex.printStackTrace();
}
return v;
}
public static void main(String[] args) throws Exception {
Vector<Object> v=execWebService("http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx","http://WebXml.com.cn/", "getCountryCityByIp","theIpAddress", new Object[] { "116.228.185.114" });
for(Object s:v){
System.out.println(s.toString());
}以上是类的代码,在后台直接运行时没有问题,将方法复制到action中,调用时出现异常:java.lang.NoClassDefFoundError: javax/xml/rpc/Call*我看了一些解答是说缺少包,我把工程下的所有包都复制到了tomcat的lib目录还是一样的问题...
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货