1,準備工作:
①需要使用到jaxws的一系列架包,網址:http://jax-ws.java.net,我下的是比較新的一個版本(下載好以后吧架包發在lib下),②webservice的一個工具:soapUI,這個在網上都有③開發web項目的IDE
我使用的是myEclipse6.5,④生成客戶端代碼的axis,我用的是1.4。
2工具都準備好了,接下來就是寫代碼了,webservice就是將接口發布給別的程序調用,所以我們對外只能暴露我們的接口。
創建兩個包,一個是com.itf.test,另外一個是com.impl.test,看得出來一個是放接口的,一個是放實現類
package com.impl.test;import javax.jws.WebService;import nc.itf.test.IHelloWorld;//targetnamespace指的是wsdl的namespace@WebService(targetNamespace="http://demo.webservice",name="Hello")public class HelloWorldImpl implements IHelloWorld{ @Override public String sayHelloWorld() { return "Hello World"; }}
package com.itf.test;import javax.jws.WebService;@WebServicepublic interface IHelloWorld { public String sayHelloWorld();}注意的是對于webservice的類來說,都需要用@Webservice來注釋,注釋還有很多的參數,具體的可以去doc下面看.
3寫好代碼以后,我們就可以寫配置文件了:配置文件在WEB-INF下面

<?xml version="1.0" encoding="UTF-8"?><endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0"> <endpoint name="IHelloWorld" implementation="nc.impl.test.HelloWorldImpl" url-pattern="/hello"> </endpoint></endpoints>
配置文件的詳細寫法也可以從文檔中看
寫好這些東西以后,就可以啟動tomcat,如果不出意外的話,就會看到
點進去就可以看到詳細的信息了,然后把soapUI打開,新建一個項目,將這個上面的URL復制到soapUI中,tools->Axis1.XArtifacts,tools-tools
點擊缺點,就可以選擇生成了,需要選擇目標地址。
忘記了,還有web.xml文件需要添加:
<!-- ws --> <listener> <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class> </listener> <servlet> <servlet-name>blog</servlet-name> <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet>
新聞熱點
疑難解答