我在Eclipse中安装了WTP(http://www.eclipse.org/webtools/ws/),安装了Tomcat和Axis2。
我正在学习网络服务。我有一个简单的Hello类,用于创建WS服务器和客户端。
在Eclipse中,我右键单击Hello.java然后转到New>其他>网络服务。我将服务器设置为“启动服务”,将客户端设置为“测试客户端”并单击“下一步”两次。在这个向导中,我在“测试Web服务”屏幕上结束,该屏幕将Web Services Explorer列为唯一可用的测试工具。
如果单击“启动”按钮,将打开一个浏览器窗口,其中包含Web服务资源管理器,其中包含URL http://127.0.0.1:59981/wse/wsexplorer/wsexplorer.jsp?org.eclipse.wst.ws.explorer=4
,我可以在“动作”面板中选择要运行的helloName操作来测试Web服务。一切正常,我能够将表单发送到WS客户端,它向服务器发送消息,获取响应并在状态面板中显示SOAP请求和响应信封。
回到Eclipse,我仍然打开了向导窗口(我点击了Launch按钮)。如果我单击Finish(或Next几次),将从Eclipse项目HelloClient构建一个新客户端,然后从Eclipse内部的URL http://localhost:8080/HelloClient/sampleHelloProxy/TestClient.jsp
打开,标题为Web Services Test Client。
请注意,Web Serces Explorer(在“浏览器”中从“启动”按钮打开)使用端口59981,而Web服务测试客户端(在向导完成时在Eclipse中打开)位于端口8080(Tomcat主端口)。
因此,正在构建2个不同的客户端。 Web Services Explorer的输入形式更好,允许从复选框设置nil值,使用CalendarBrowser选择日期等,并显示SOAP信封...但对于复杂的响应,它没有Web Services Test Client的Result面板在更易于查看的HTML页面中显示复杂的响应。
另一方面,Web Services Test Client无法为更复杂的输入构建正确的表单。例如,WSDL的带有xsd:restriction的xsd:simpleType在表单中被忽略,导致服务器返回错误消息,因为缺少参数。
我的问题是:
1)有没有办法从内部向导中选择哪个客户端在Eclipse中打开?与我一起学习的朋友只需完成向导就能从Eclipse内部打开Web Services Explorer。
2)是否有任何插件允许Web Services Explorer的客户端构建响应页面以便于查看?这是Web服务测试客户端的客户端克服Web Services Explorer的唯一缺失。
答案 0 :(得分:0)
知道了!
在“测试Web服务”屏幕之后,我再单击“下一步”2,然后进入“Web服务客户端测试”。
在其中我有另一个Test facility字段,我可以选择'JAX-RPC JSPs'或'Web Services Explorer'。选择第二个,它就像我想要的那样在Eclipse中打开。
在其状态面板中,我有一个表单视图,显示了一个很好的响应HTML和Source视图,显示了SOAP请求和响应包络的突出显示!