java学习笔记之webservice(四)--用Myeclipse在web项目中发布WebService

来源:互联网 发布:搞笑p图软件 编辑:程序博客网 时间:2024/04/30 15:17

》》接上一篇


准备工作:

1、新建一个web项目;

2、定义服务的接口Speaker:

package com.beauxie.webservice;import javax.jws.WebService;/** * 定义服务的接口 * @author   * */@WebService//此注解用在类上指定将此类发布成一个WebServicepublic interface Speaker {String sayHello(String name);}
3.创建这个接口的实现类Person:

package com.beauxie.webservice;import javax.jws.WebService;/** * 定义服务的实现类 * @author Beauxie * */@WebService(endpointInterface="com.beauxie.webservice.Speaker")public class Person implements Speaker {public String sayHello(String name) { return "Hello,"+name;}}

主要步骤:

1.依次点击左上角的“File”-->“New”-->“other”,如下图所示:


2.选择"Web Service",点击“Next”,如下图所示:



3.点击"Install JAX-WS-Facet"安装JAX-WS-Facet,如下图所示:



4.选择自己所要发布服务的项目等,如下图所示:



5.在 Java class一栏中,选择web服务的实现类,(点击右边的Browse,直接搜索类名即可),其余的不用修改:



6.完成上述步骤以后,在WEB-INF目录下可以看到多了两个文件:“sun-jaxws.xml”和“web.xml”,然后再导入相关的jar包,不然会报错:java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServletContextListener 。(点击下载相关jar包)


7.打开"web.xml",可查看配置:



8.启动web项目之后,打开浏览器,访问“web.xml”中servlet(url-pattern)对应的webservice:


出现以上界面,说明服务发布成功。


总结:

1.当出现:java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServletContextListener异常时,很大原因是因为忘了导入相关jar包;

2.通过“web.xml”中对应的servlet(url-pattern)访问发布的webservice,每个人端口号不同,我这里修改了tomcat的配置文件,将默认端口改成了80。


接下一篇 》》



0 0