發布自己的WEB services服務
1)建立自己的JAVA檔案如下:
public class HelloService
{
?public String echoString(String name)
?{
??return name;
?}
}
2)將該檔案改名為HelloService.jws,copy 到D:/Tomcat 5.0/webapps/axis目錄下
3)啟動TOMCAT
4)編寫用戶端代碼如下:
package com.hongsoft.test;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
public class TestClient
{
?? public static void main(String [] args) {
?????? try {
?????????? String endpoint="http://localhost:8080/axis/HelloService.jws";
????
?????????? Service? service = new Service();
?????????? Call???? call??? = (Call) service.createCall();
?????????? call.setTargetEndpointAddress( new java.net.URL(endpoint) );??????????
?????????? call.setOperationName(new QName("echoString") );
??????????
?????????? String ret = (String) call.invoke( new Object[] { "Hello!" } );
?????????? System.out.println("Sent 'Hello!', got '" + ret + "'");
?????? } catch (Exception e) {
?????????? System.err.println(e.toString());
?????? }
?? }
}
5)運行用戶端程式,效果如下:
?Sent 'Hello!', got 'Hello!'
Axis能夠自動定位檔案,編譯,並把SOAP調用轉化為對你的服務的JAVA調用.
6)是不是很簡單?是的,但你別高興太早了,我們要注意下面的問題:
? JWS web services只是用於簡單的WEB服務的,我們在服務代碼中不能用package,而且,代碼是在運行期
編譯的,不到發布階段,你找不到任何的錯誤提示資訊.我們將在後面討論其它的發布自己的WEB services服務的方法.