netbeans创建webservice服务端server|webservice客户端client示例
创建 Web 服务
CalculatorWS,在“包”中键入 org.me.calculator,然后单击“完成”。 设计 Web 服务
本练习旨在向 Web 服务中添加一项操作,该操作用于添加从客户端接收到的两个数字。
IDE 将在浏览器中打开测试器页(如果您已将 Web 应用程序部署到 GlassFish 中)。对于 Tomcat Web Server 和 EJB 模块的部署,情况有所不同
CalculatorWSServletClient。单击“完成”。 右键单击 "CalculatorWSServletClient" 节点,然后选择“新建”>“Web 服务客户端”。将显示“新建 Web 服务客户端”向导。
在“项目”中,单击“浏览”。浏览至要使用的 Web 服务。选定 Web 服务后,单击“确定”。 将其他设置保留为缺省值,然后单击“完成”。“项目”窗口中的“Web 服务参考”节点将显示新建客户端的结构,其中包括在本教程前面部分创建的 add 操作:
右键单击 "CalculatorWSServletClient" 项目节点,然后选择“新建”> "Servlet"。将该 Servlet 命名为 ClientServlet,并将其置于名为 org.me.calculator.client 的包中。单击“完成”。 右键单击 "CalculatorWSServletClient" 项目节点,然后选择“属性”。打开“运行”属性,然后取消选中“在保存时部署”。 要使 Servlet 成为应用程序的入口点,请右键单击项目节点,选择“属性”,单击“运行”,然后在“相对 URL”中键入 /ClientServlet。单击“确定”。 如果 ClientServlet.java 存在错误图标,请右键单击项目节点,然后选择“清理并生成”。 在源代码编辑器中,删除注释掉 processRequest 方法主体的行。该行如下所示:现在,将表示 add 操作的节点拖至创建的空白处。
processRequest 方法现在如下所示(添加的代码在下面以粗体显示):
try { // Call Web Service Operation org.me.calculator.CalculatorWS port = service.getCalculatorWSPort(); // TODO initialize WS operation arguments here int i = 0; int j = 0; // TODO process result here int result = port.add(i, j); out.println("Result = "+result); } catch (Exception ex) { // TODO handle custom exceptions here } out.println("</body>"); out.println("</html>"); out.close(); }将 i 和 j 的值更改为正整数,如 3 和 4。
右键单击项目节点,然后选择“运行”。将启动服务器(如果它尚未运行);同时,系统将生成并部署应用程序,并且打开浏览器以显示计算结果
客户端 3:Web 应用程序中的 JSP 页在本部分中,您将创建一个新的 Web 应用程序,然后在“Web 应用程序”向导创建的缺省 JSP 页中使用 Web 服务。
CalculatorWSJSPClient。单击“完成”。 右键单击 "CalculatorWSJSPClient" 节点,然后选择“新建”>“Web 服务客户端”。 在“项目”中,单击“浏览”。浏览至要使用的 Web 服务。选定 Web 服务后,单击“确定”。 将其他设置保留为缺省值,然后单击“完成”。 在“Web 服务参考”节点中,展开表示 Web 服务的节点。此时将显示您要从客户端调用的 add 操作。 将 add 操作拖至客户端的 index.jsp 页,并将其放在 H1 标记下。将在 index.jsp 页中立即生成用于调用服务操作的代码,如下所示:
<%try { org.me.calculator.CalculatorWSService service = new org.me.calculator.CalculatorWSService(); org.me.calculator.CalculatorWS port = service.getCalculatorWSPort(); // TODO initialize WS operation arguments here int i = 0; int j = 0; // TODO process result here int result = port.add(i, j); out.println("Result = "+result);} catch (Exception ex) { // TODO handle custom exceptions here} %>将 i 和 j 的值从 0 更改为其他整数,如 3 和 4。
右键单击项目节点,然后选择“运行”。注:此文转自:http://hi.baidu.com/mywish1987/blog/item/28eb36d35f0191d9562c8460.html
?
另:在使用netbeans开发WEBSERVICE的时候,所布置的服务器如:TOMCAT,有时会因为JAR包的不同版本或缺失而产生异常,具体情况,请查看服务器的log.