需要jar包:
cxf-bundle-2.2.4.jar
wsdl4j.jar
XmlSchema-1.4.5.jar
测试:
package cxf;
public class TestCxf {
public static void main(String[] args) {
String webServiceUrl="http://127.0.0.1:8087//services/Test?wsdl";
String method="execute";
Object[] params = new Object[] { "qwre",3 };
Object obj=CxfClient.getResult(webServiceUrl, method, params);
System.out.println(obj);
}
}
代码:
package cxf;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
public class CxfClient {
/**
* 通过CXF方式调用WebService接口
* @param webServiceUrl WebService接口地址
* @param method 方法名称
* @param params 参数
* @return
*/
public static Object getResult(String webServiceUrl,String method,Object[] params){
// 创建CXF客户端
JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
Client client = dcf.createClient(webServiceUrl);
try {
return client.invoke(method, params)[0];
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}