》》接上一篇
准备工作:
1、新建一个web项目;
2、定义服务的接口Speaker:
package com.beauxie.webservice;
import javax.jws.WebService;
/**
* 定义服务的接口
* @author
*
*/
@WebService//此注解用在类上指定将此类发布成一个WebService
public 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。
接下一篇 》》