一. 开发服务
新建maven的web项目就可以了,
1.新建一个web服务
2.服务名称定义
3.更改配置
4.默认建好的服务文件
5.增加一个add的服务
import javax.jws.WebService; import javax.jws.WebMethod; import javax.jws.WebParam; /** * * @author Administrator */ @WebService(serviceName = "CalculatorWS") public class CalculatorWS { /** * This is a sample web service operation */ @WebMethod(operationName = "hello") public String hello(@WebParam(name = "name") String txt) { return "Hello " + txt + " !"; } @WebMethod(operationName = "add") public int add(@WebParam(name = "name") int i,int j) { return i+j; } }
6.启动配置
如果您使用的是 Tomcat Web 服务器,则没有测试客户端。您只能运行项目并查看 Tomcat Web 服务页是否打开。
此时,在运行项目之前,您需要将 Web 服务作为您的应用程序的入口点。要使 Web 服务成为应用程序的入口点,请右键单击 "CalculatorWSApplication" 项目节点,然后选择 "Properties"(属性)。
打开 "Run"(运行)属性,然后在 "Relative URL"(相对 URL)字段中键入 /CalculatorWS。单击 "OK"(确定)。
要运行项目,请再次右键单击项目节点,然后选择 "Run"(运行)。
7.服务的接口信息
wsdl信息
二.调用服务
新建一个maven的web项目
1.新建web服务客户端
2.选择WSDL
选择 "Project"(项目)作为 WSDL 源,然后单击 "Browse"(浏览)以打开 "Browse Web Services"(浏览 Web 服务)对话框。
在 "CalculatorWSApplication" 项目中选择 "CalculatorWS" Web 服务。单击 "OK"(确定)关闭 "Browse Web Services"(浏览 Web 服务)对话框。
在新建 Web 服务客户端向导中确认包名为空,并保留其他设置的默认值。
注意:请勿选择包名。将此字段保留为空。
单击 "Finish"(完成)。
3.调用服务
新建第一个Rpc.java的类文件
在源代码编辑器中将 add 节点拖至对应的方法里,需要适当修改。
也可以在编辑器中单击鼠标右键,然后选择 "Insert Code"(插入代码)> "Call Web Service Operation"(调用 Web 服务操作),而无需拖动 add 节点。
注意:不可以拖到selvlet里,需要写在java的普通class里。
4.在ClientServlet中调用Rpc.java的add方法。
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { /* TODO output your page here. You may use following sample code. */ out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet ClientServlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Servlet ClientServlet at " + request.getContextPath() + "</h1>"); Rpc r=new Rpc(); out.println(r.add(1, 2)); out.println("</body>"); out.println("</html>"); } }
5.从浏览器输出数据看到成功调用到了WebService
三.查看数据包
1.先get请求wsdl
2.再post请求
3.返回的数据
完整的数据交互过程参考:java 实现WebService 以及不同的调用方式
参考:
JAX-WS Web 服务入门指南
REST 风格的 Web 服务入门指南
Web Service 那点事儿(1)