快速业务通道

使用NetBeans 5.0和GlassFish建立JAX-WS 2.0服务 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
pp”,并且选择保存工程的位置。确保“Server”设置成了你的GlassFish应用服务器,并且去掉对“Set Source Level to 1.4”的选择(JAX-WS2.0需要JDK5),点击Finish。现在这个工程已经创建了,如果愿意,你也许要删除“index.jsp”。这个工程将会用到你服务端类作为Servlet类,并且GlassFish在发布时会将这个类转化为一个web service。

添加GlassFish库到新的工程中。在Project选项卡中,右键点击“Libraries”,选择Add Library。选择“GlassFish”库,然后点击Add Library。现在你应该告诉NetBeans,在产生的war文件中不包括GlassFish的jar文件(因为它们已经包含在了服务器中)。右键点击SampleApp工程,选择Properties。点击左面的Library节点,去掉“Compile-time Libraries”表格中紧挨着GlassFish选项的选择。作为一个可选(不过是有帮助的)步骤,点击Run节点,在“Relative URL”中输入“/hello?wsdl”。当程序运行时,它将会为这个web service的wsdl文件打开一个浏览器。点击OK。

增加服务类。右键点击“Source Packages”,选择New和Java Packages,输入“my.sample.server”,点击Finish。为了向这个包中增加一个类,在这个包节点上右键点击,选择New和Java Class。因为示例类已经写好,你可以将ServiceImpl.java保存到SampleApp/src/java/sample/server/文件夹下,NetBeans会找到它。如果你想要查看文件的内容,只需双击包节点下的这个文件的名字。你可以看到它是一个包含一个方法的简单Java类,还有一些在JAX-WS2.0运行时要用到的注释。

保存配置文件web.xml文件到SampleApp/web/WEB-INF/文件夹下。它将覆盖默认的那个,它指定ServiceImpl类作为servlet,以及servlet的名字,这个servlet的名字基于JAX-WS服务名+端口号。应用服务器将用到这个信息运行wsgen作为创建web service的必要条件。

为了创建和启动服务,从菜单栏中选择Run和Run Main Project,或者使用快捷键F6。NetBeans将会编译服务类、创建war文件、启动应用服务器和发布应用程序。如果NetBeans安装时都进行了适当的设置,一个浏览器将会被打开,显示web service的wsdl文件。如果你愿意你可以改变服务类,可以看到反射的wsdl发生的变化,只需要按下F6重新编译和发布服务。

创建一个客户端

对于一个包含web应用的完整应用程序,你将要为这个应用程序正常地创建一个新的工程。为了简单地创建一个客户端来测试我们新的web service,你可以使用NetBeans的单元测试功能。

由创建一个新的测试包入手。右键点击Projects选项卡中“Test Packages”,选择New和Java Packages。输入“my.sample.test”,点击Finish。一般来说,你可以通过右键点击这个测试包和选择New和Empty Test增加测试。对于本例,你可以保存ServiceTest.java到SampleApp/test/my/sample/test/文件夹下。打开这个文件查看测试时如何创建一个服务,然后是服务的代理器,对它调用hello(String)。注意:当你增加自己的客户端代码作为一个JUnit测试时,NetBeans希望名字的形式为“*Test.java”。

运行之前,增加这段xml到工程的build.xml文件中。为了编辑这个文件,你可以使用菜单栏中的File-〉Open File,或者打开Files选项卡而不是Projects,展开“SampleApp”节点,接着双击build.xml。NetBeans在编译和运行测试客户端之前就会调用这个target。当这个target运行时,它确保这个服务已经建立并且发布(如果需要重新编译)。关于wsimport工具的更多信息参见JAX-WS文档。

<!-- Overrides build-impl.xml target to start server and gene

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号