商讯信箱
用户名: @
密  码:   注册|忘记密码
登录
个人用户经销商
您的位置:首页 > 技术频道 > 正文

在Eclipse和Tomcat上启动Beehive Web Services

作者:Jesper J鴕gensen  2007-07-11
【IT168技术文档】

在阅读本文之前,您也许想读一下前面介绍如何安装Eclipse、WTP、Tomcat和Pollinate的文章

Web Services是蜂巢计划(Beehive project)的核心组件。我上一次编码大约是在6个月前,那时我习惯了使用WebLogic Workshop 8.1,以至于忘记了如何?#20174;零开始?#26500;建Web Services。

经过分析后,我认为Beehive Web Services是目前开发Web Services的最好的开源方法。它唯一的问题是,目前它还是beta版,而且要依赖于JDK 5,这意味着您不能将其转储到您已经在生产中使用了近两年的web应用程序和IDE中。

但是正如前文所说,我现在有一个任务,要试用一些新的工具和框架。所以我已经安装了JDK 5、Eclipse 3.1、WTP和Pollinate。如果您想更详细地了解我的任务,可以阅读我的前一篇文章

我不知道Pollinate是否提供了开发Beehive Web Services的简化操作,但是我没有找到。

所以我从Beehive项目页开始:

0) 首先下载Beehive纵链接)。将其放到它自己的文件夹中。

1) 启动Eclipse(以及WTP),并创建一个基本的J2EE Web项目。因为使用的是Tomcat,所以去掉揂dd module to EAR Project... ?#26694;前的选中标记。选中揂dd support for annotated Java classes?#26694;。我不知道它有什么用处,但是似乎选中才是明智的。

2) 打开新项目,右击WebContent文件夹,选择Import...(导入)。

3) 选择File System,并导航到放置Beehive的文件夹。在文件夹中找到示例,并选择wsm-samples(或wsm-blank)。

4) 在导入对话框中,选中整个wsm-samples目录,然后打开,去掉WEB-INF/src目录前的选中标记。现在还不需要源代码。在WEB-INF目录下,去掉build.properties和build.xml前的选中标记。选择yes,覆盖现有的文件。

5) 在项目中右击JavaSource,选择import。选择file system,导航到刚才去掉选中标记的WEB-INF/src。不要选中src目录本身。只选中org和web subdirectories。

6) 现在要将build.xml和build.properties放到项目的根目录下。这个构建文件将构建web services,它依赖于beehive主目录,所以不要删除它!

6a) 现在可以从wsm-samples/WEB-INF目录导入build.xml了,但是必须对build.xml做一些改动。我已经上传了修改后的build.xml

6b) 在项目的根目录下创建一个名为build.properties的新文件。对它进行编辑,结果如下:

beehive.home=[path-to-your-beehive-install]

service.name=[what ever you want you service name to be]

您可以阅读Beehive Web Services教程,了解更多这方面的内容。

7) 现在可以构建项目了。右击build.xm,选择Run-As -> Ant Build。这将在Ant文件中构建默认目标。

8) 如果正确设置了Tomcat(参见我前一篇文章),现在可以测试一下。右击项目文件夹,选择Run As -> Run on Server...。对话框将默认运行在现有的Tomcat Server上。如果单击next,可以选择部署/不部署某个Eclipse项目,但是这一步不是必须的。

Eclipse现在应该会打开一个浏览器窗口,在web service项目中指示一个测试页。您可以通过反复试验来学习,并阅读关于Beehive的文档。文档并不完整,但是您基本上可以了解到使用JDK 5注释的体验、如何使用Java类轻松构建web services以及在普通平台上完成所有这些工作的体验(如果您已经习惯使用Workshop 8.1的话)。

关于用于构建web services的基于注释的方法以及其他Java相关内容,社区中有许多讨论。例如,theserverside.com上的这个单元讨论了JAX-RPC 2.0(它也使用了注释)。刚刚,又开启了关于JAX-RPC的第二个单元,其中的讨论相当激烈。很显然,这是一个热点话题。

Beehive Web Services使用了JSR 181标准,该标准规定了如何使用注释元数据像编写Java类一样编写web services。正如JAX-RPC 2.0 specification request第2节所描述的,该规范使用JSR 181来指定Java代码内Java到WSDL的绑定:

对于JAX-RPC 2.0,我们想使它可以使用注释(例如,由JSR-175所定义的元数据功能),以便直接在Java类内部插入Java<->WSDL映射信息。我们还希望JAXB 2.0也可以进行同样的数据绑定。在此我们的明确目标是捕获JSR-109的jaxrpc-mapping-info描述符中的全部信息,并调整JSR-181以避免重复劳动。

关于契约式设计(design-by-contract)以及Java是否是合适的契约语言(甚至WSDL)这个话题,我将会在以后的文章中讨论。本文主要集中于启动Beehive,以便体验一下这个开发环境以及Beehive Web Services与WebLogic Workshop 8.1风格的web services的区别。

再谈一下代码示例。Beehive教程和示例是一个很好的起点,我会在以后的文章中对此加以讨论。目前我主要关注编码的几个方面,这将会在我接下来的几篇文章中体现出来。

原文出处:http://dev2dev.bea.com/blog/jesperfj/archive/2005/06/getting_started_1.html

1
【内容导航】
第1页: 第1页
©版权所有。未经许可,不得转载。
[责任编辑:阿雪]
[an error occurred while processing this directive]