使用servlet 搭建webservice 服务
1、编写webservice服务
package com.lc.function;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.ws.Endpoint;
@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)//此句话一定要加
public class FirstWebService {
public String theFirstWebMethod(){
return "hello ,this is the first webservice";
}
public static void main(String args[]){
//发布第一个webservice 地址
Endpoint.publish("http://localhost:9001/webService/firstWebService", new FirstWebService());
System.out.println("publish successfully...");
}
}
注意:在使用servlet 启动webservice是,一定要加上@SOAPBinding(style = SOAPBinding.Style.RPC)。否则会报错,具体报错如下:
2、编写Servlet服务
/**
* 使用servlet 发布webservice
* @author
*
*/
public class WsServlet extends GenericServlet {
//servlet启动,服务初始化,将webservice服务使用endpoint发布。
@Override
public void init(ServletConfig servletConfig) throws ServletException {
super.init(servletConfig); http://localhost:9001/webService/firstWebService");
//发布一个WebService
Endpoint.publish("http://localhost:9001/webService/firstWebService", new FirstWebService());
System.out.println("已成功启动WebService服务:http://localhost:9001/webService/firstWebService");
}
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
}
}
3、配置web.xml数据
<servlet>
<servlet-name>WSServlet</servlet-name>
<servlet-class>com.lc.servlet.WsServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WSServlet</servlet-name>
<url-pattern>/WsServlet</url-pattern>
</servlet-mapping>