一个axis2 webservice helloword例子
1. 从 http://ws.apache.org/axis2/download/1_4_1/download.cgi 网站下载axis2-1.4.1-bin.zip(Standard Distribution),及 axis2-1.4.1-war.zip (War Distribution)
2. 在eclipse中新建JAVA工程,如AxisService 新建一个包Stub,在包中建立一个java文件HelloAxis2,内容如下:
package Stub;
public class HelloAxis2 {
public String echo(String value) { System.out.println(">>>>> Service HelloWorldService: " + value + " "
+ new java.util.Date().toLocaleString());
return value;
}
}
3. 在工程下面新建一个文件夹 META-INF ,并在其中建一个services.xml 内容如下:
<service>
<parameter name="ServiceClass" locked="false">
Stub.HelloAxis2
</parameter>
<operation name="echo">
<messageReceiver
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
4. 打包成 *.aar 方法:
选中 Stub整个包,并且选中 services.xml 文件,右键 Export 为 JAR 文件。命名为: HelloAxis2.aar Finish 即可.
这个HelloAxis2.aar 存在于 eclipse 中的workspace 目录下了.
5. 接下来到Tomcat中去. 将下载好的 axis2.war 解压到 Tomcat5.5的webapps中, 启动 Tomcat5.5
键入 http://127.0.0.1:8080/axis2/ (默认的端口) 出现Welcome 界面就OK.
6. 进入到 Administration 的界面 登录名 admin 密码 axis2
在Upload Service 页面中上传刚才建立的服务 HelloAxis2.aar 文件, 成功后就有服务HelloAxis2了.
在Available Services 页面会有 如下信息表示服务OK
HelloAxis2
Service EPR : http://127.0.0.1:8080/axis2/services/HelloAxis2
Service REST epr : http://127.0.0.1:8080/axis2/rest/HelloAxis2
Service Description : null
http://127.0.0.1:8080/axis2/services/HelloAxis2?wsdl 可看到其 WSDL文件。
7. 用CMD命令 进入到 axis2-std-1.0-bin.zip 解压包中执行:
wsdl2java.bat -uri http://localhost:8080/axis2/services/HelloAxis2?wsdl -o F:/ -p Stub
将会在 F:/ 中生成一个src/Stub包 ,将其中的两个JAVA (HelloAxis2CallbackHandler.java HelloAxis2Stub.java )拷贝到 另一个测试客户端的工程中进行测试.
另外加一个JAVA测试类TestHelloAxis2,内容如下:
package test;
import Stub.HWSStub;
import Stub.HWSStub.EchoResponse;
public class TestHWS {
public static void main(String[] args) throws Exception {
HWSStub stub = new HWSStub();
HWSStub.Echo request = new HWSStub.Echo();
request.setValue(">>>>>>Client OK :::: "+new java.util.Date().toLocaleString()
+"axis2 web service......... ");
EchoResponse response = stub.echo(request);
System.out.println("Response : " + response.get_return());
}
}
测试结果:
[2008-12-10 10:31:10] [INFO ] Deploying module: metadataExchange - file:/D:/axis2/axis2-1.4.1/lib/mex-1.4.1.jar - at org.apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.java:75)
Response : >>>>>>Client OK :::: 2008-12-10 10:31:10axis2 web service.........
通过ie浏览器测试
http://localhost:8080/axis2/services/HelloAxis2 /echo?value=test
返回
OK!