從技術的角度來說,有必要提一下我們的調試環境。我們使用的是Windows xp操作系統,安裝有JAVA 2 SDK 1.4.1,Apache SOAP 2.3.1,JAF 1.0.2,JAVAMAIL 1.3.1和Xerces 2.6.0。上面所提及的都能在Tcomcat 4.1.29 jsp/Servlet容器中正常運行。所有的軟件都是免費自由軟件,因此你能夠很輕易的下載它們并自己在任何你喜歡的平臺如Windows或UNIX上安裝它們。Java SDK,JAF和JAVAMAIL位于SUN的官方網站(http://java.sun.com),其他的軟件在Jakarta項目組的官方網站(http://jakarta.apache.org)上有down的??赡苣阍诳吹轿覀冃枰@么多不同的包(package)時已經有點擔心和不安了,但是實際上你不應該擔心這些的。一旦你懂了基礎,那么對你將相當輕易。安裝不是一件很難的事情,你只需要在設置環境變量的時候仔細些,比如CATALINA_HOME, CLASSPATH, JAVA_HOME 等等,所有這些步驟都是手工的。由于我僅僅是想將你的注重力再次集中到它們身上,所以你能很快的就完成以上配置過程。我只是添加下面的一些字符串到Tomcat的bin/setclasspath.bat文件中: ... set CATALINA_HOME=C:/Tomcat4.1.29 set CLASSPATH=%JAVA_HOME%/lib/tools.jar set CLASSPATH=%JAVA_HOME%/soap-2.3.1/lib/soap.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/javamail-1.3.1/mail.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/jaf-1.0.2/activation.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/xerces-2_6_0/xercesImpl.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/xerces-2_6_0/xercesSamples.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/xerces-2_6_0/xml-apis.jar set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/xerces-2_6_0/xmlParserAPIs.jar set CLASSPATH=%CLASSPATH%;%CATALINA_HOME%/common/lib/servlet.jar set CLASSPATH=%CLASSPATH%;%CATALINA_HOME%/common/lib/tools.jar ...
1: // SOAPService.java 2: package HelloWorld; 3: public class SOAPService { 4: public String sayHi(String x) { 5: return("Hello my friend, " + x + "! Glad to see you!"); 6: } 7: }
添加任何注釋也是很輕易的。要編譯它,只需要用下列命令:
javac SOAPService.java
第二步,一旦我們預備好了SOAP Service,我們需要用SOAP Service Manager來部署它。這個可以通過很多方式來實現,但是為了能讓初學SOAP的讀者更輕易理解SOAP,我提供了一個最輕易的方式。我們假設你的Web Server(Tomcat或其他)已經正常運行,并且你已經正確安裝了SOAP。那么當瀏覽器訪問http://localhost:8080/soap/,你會看見Apache SOAP的歡迎頁面。點擊Run the admin client ,然后 Deploy。你會得到一個屏幕顯示,在那里你需要填入ID,Scope,Method,Provider Type和JAVA Provider的信息到表單域中。你能忽略其他所有的表單域,除非你真的需要它們的信息。我們的“HelloWorld”例子不需要它們,所以,我們填的下面的值:
一些注釋:ID是我們要從SOAP Client標識我們的SOAP Service的唯一名字。Method包含SOAP Service提供的一系列方法。JAVA Provider-Provider Class是SOAP Service Java類的名字。
現在,點擊Deploy 按鈕,那么你的服務會被部署。再次強調,請注重正確設置CLASSPATH環境變量。然后,你的HelloWorld.SOAPService類能夠被找到,并且所有必需的jar包也能被找到。這是個幾乎每個人都會犯的普通錯誤?,F在,你能夠點擊 List ,將會看見你的服務已經被部署進來。恭喜!