第一种:
//要求服务端使用Java语言开发,同时客户端需要服务的接口。
String seriveLocation = "http://localhost:81/webservice01/services/HelloWorld";
ObjectServiceFactory serviceFactory = new ObjectServiceFactory();
Service service = serviceFactory.create(IHelloWorld.class);
XFireProxyFactory proxyFactory = new XFireProxyFactory();
try {
IHelloWorld helloWorld=(IHelloWorld) proxyFactory.create(service, seriveLocation);
String msg = helloWorld.sayHi("JN0909");
System.out.println(msg);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
第二种:
//对服务端没有要求。但是在处理复杂数据类型时,客户端处理非常麻烦。
//因此适用参数和返回值是简单数据类型的服务
String wsdlLocation="http://localhost:81/webservice01/services/HelloWorld?wsdl";
try {
Client client = new Client(new URL(wsdlLocation));
Object[] results=client.invoke("sayHi", new Object[]{"JN0909 client 2"});
System.out.println(results.length);
System.out.println(results[0]);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
第三种:
需要创建一个WebServices工程,之后再创建一个webservices的客户端,客户端的相关类都会自动生成。