WebService學習之旅(五)基於Apache Axis2釋出第一個WebService
上篇博文介紹瞭如何將axis2 webservice引擎安裝到Web容器中,本節開始介紹如何基於apache axis2釋出第一個簡單的WebService。
一、WebService服務端釋出步驟
1.開啟Eclipse工程,新建一個Java Project,例如筆者工程名為axis2-recipe01。
2.編寫Web服務介面及實現類
HelloWorld.java
package com.csdn.ws.axis2.recipe01;
public interface HelloWorld {
String sayHello(String name);
}
HelloWorldImpl.java
package com.csdn.ws.axis2.recipe01;
public class HelloWorldImpl implements HelloWorld {
@Override
public String sayHello(String name) {
return "hello," + name;
}
}
大家可能已經注意到了,前面我們使用jax-ws釋出webservice時,web服務介面和實現類需要使用註解@WebService和@WebMethod修飾,但是使用axis2引擎時並不需要。
2.在工程根路徑下,新建一個META-INF目錄,然後在該目錄下新建一個services.xml檔案,注意名稱不能改變。
3.開啟services.xml,新增webservice的描述資訊,內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<service name="HelloWorld">
<description>
HelloWorld Service Example
</description>
<parameter name="ServiceClass">
com.csdn.ws.axis2.recipe01.HelloWorldImpl
</parameter >
<parameter name="useOriginalwsdl">
false
</parameter>
<operation name="sayHello">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
根節點為service,它的name屬性指定webservice名稱,parameter標籤用於指定一些配置引數,上面的ServiceClass引數指定webservice介面,useOriginalwsdl引數指定是否使用axis2自動生成wsdl,該引數通常為false,表示由axis2自動生成wsdl。operation標籤指定對外發布的方法名。
4.在工程上點選右鍵=>export=>Jar File,點選Next按鈕,去掉.classpath和.project檔案選擇。
5.儲存檔名為axis2-recipe01.aar,將此檔案複製到%TOMCAT_HOME%/webapps/axis2/WEB-INF/services目錄下。
(注:axis2安裝到tomcat請參考前面的文章)
點選HelloWorld連結,可以檢視該WebService的wsdl文件。
本節內容就到此為止吧,基於axis2的客戶端呼叫放在下節介紹。