1. eclipse axis 插件下载地址 http://archive.apache.org/dist/ws/axis2/tools/1_4_1/
一个是代码生成插件 axis2-eclipse-codegen-wizard
一个是服务打包插件 axis2-eclipse-service-archiver-wizard
2. 编写service 服务内容。简单的演示有参数和无参数的调用方法
package com.csc.joy;
public class Axis2Service {
public String sayHello() {
return "Hello World!";
}
public String sayHelloToPerson(String name) {
if (name == null || name.equals("")) {
name = "nobody";
}
return "Hello World!" + name;
}
}
3. 调用service的java代码 ,直接运行就行,注意此时要打开tomcat服务才行。
package com.csc.joy.client;
import java.rmi.RemoteException;
import java.util.Iterator;
import javax.xml.namespace.QName;
import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
public class ClientTest {
public static void main(String[] args) throws RemoteException {
//调用方法1
RPCServiceClient rpcServiceClient = new RPCServiceClient();
Options options = new Options();
options.setTo(new EndpointReference("http://localhost:8080/axis2/services/Axis2Service"));
options.setAction("urn:sayHelloToPerson");
rpcServiceClient.setOptions(options);
OMElement element = rpcServiceClient.invokeBlocking(new QName("http://joy.csc.com", "sayHelloToPerson"),new Object[]{"sss"});
Iterator values = element.getChildrenWithName(new QName("http://joy.csc.com","return"));
while(values.hasNext()){
OMElement omElement = (OMElement) values.next();
System.out.println(omElement.getText());
}
}
}