环境 : myeclipse + Jboss
参考资料:谈谈EJB是如何发布Web Service的、黎活明ejb3.0pdf
1、New Web Service Projiect
2、开始建立一个POJO 端点。
package com.foshanshop.web.ws; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebService; import javax.jws.soap.SOAPBinding; @WebService(targetNamespace = "http://ws.foshanshop.com", name = "HelloWorld", serviceName = "HelloWorldService") @SOAPBinding(style = SOAPBinding.Style.DOCUMENT) public class HelloWorldService { @WebMethod(operationName = "SayHello") public String SayHello(@WebParam(name = "name") String name) { return name + "说:你好!世界,这是我的第一个web service哦."; } }
3、接着把POJO 端点定义成一个servlet.
在WebRoot - > WEB-INF -> web.xml中添加
<servlet> <servlet-name>HelloWorldService</servlet-name> <servlet-class>com.foshanshop.web.ws.HelloWorldService</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorldService</servlet-name> <url-pattern>/HelloWorldService</url-pattern> </servlet-mapping>
4、启动Jboss ,将工程导出成war包并拷贝到Jboss -> server -> default -> deploy目录下, 发布成功可以在http://localhost:8080/jbossws/查看
点击可查看相关内容
到此webservice发不成功
5、建立客户端
选择一个项目作为客户端的project
next:
然后next 知道finish
6、客户端测试:
经过上述步骤在客户端工程中建立了包如下
新建类Test:
1 package com.foshanshop.test; 2 3 import com.foshanshop.ws.HelloWorld; 4 import com.foshanshop.ws.HelloWorldService; 5 6 public class TestHelloWorld { 7 public static void main(String[] args) { 8 try { 9 HelloWorldService service = new HelloWorldService(); 10 HelloWorld helloWorld = service.getHelloWorldPort();// 从服务中取得入口端点 11 String result = helloWorld.sayHello("张朗"); 12 System.out.println(result); 13 } catch (Exception e) { 14 e.printStackTrace(); 15 } 16 } 17 }
运行可看到结果