天天看点

Eclipse开发Apache Tuscany上的SCA应用

本文将会介绍一个Eclipse的SCA开发插件,用以协助开发者使用Eclipse进行Apache Tuscany开发,完成相关的配置和运行任务。该工具工作在Eclipse 3.3 Europa上。

  从Eclipse的工作区的菜单项中选择Help - Software Updates - Find and Install。打开Install - Feature Updates对话框。

  选择"Search for new features to install",按下一步。显示"Update sites to visit"对话框。

  按下New Remote site.在弹出对话框中,填入:

  Name: Tuscany

  URL: http://people.apache.org/~jsdelfino/tuscany/tools/tuscany-sca-2.0-incubating-SNAPSHOT-updatesite/

  点击确定,将会如图1所示:

Eclipse开发Apache Tuscany上的SCA应用

  图1

  点击完成,将会显示Updates - Search results对话框。如图2选择Tuscany。

Eclipse开发Apache Tuscany上的SCA应用

  图2

  按下一步。在授权对话框中,选择同意授权文件,点击下一步。最后显示图3的对话框。

Eclipse开发Apache Tuscany上的SCA应用

  图3

  点击完成下载Tuscany插件。这个下载包大概有35Mb,包含了Tuscany运行时和所有Tuscany支持的SCA实现类型和绑定的依赖库。

  下载完之后将会出现图4的对话框。

Eclipse开发Apache Tuscany上的SCA应用

  图4

  现在按下安装所有,将会安装该插件。

  如图5所示,提示重启Eclipse工作区。

Eclipse开发Apache Tuscany上的SCA应用

  图5

  现在你就拥有一个帮助你编写,测试和运行SCA应用程序的Eclipse工具了。

  下面使用一个简单的HelloWorld程序来说明如何使用该工具,这个应用程序使用了一个SCA Java组件来提供包含两种绑定的服务,一个Web Service绑定和一个JSONRPC绑定。

  从菜单中选择New - Java Project。如图6所示,填入工程名称:

Eclipse开发Apache Tuscany上的SCA应用

  图6

  点击下一步,进入Java Setting对话框,选择Libraries的属性页。如图7。

Eclipse开发Apache Tuscany上的SCA应用

  图7

  点击Add然后选择Tuscany库,如图8所示:

Eclipse开发Apache Tuscany上的SCA应用

  图8

  点击下一步,然后点击完成。Tuscany库将会被添加到编译路径,如图9所示。

Eclipse开发Apache Tuscany上的SCA应用

  图9

  点击结束创建该工程。

  现在为我们的Hello SCA组件创建一个Java接口和一个Java实现类。

  右键点击src目录,选择New – Interface。在New Java Interface对话框,输入

  Package: hello

  Name: Hello

  如图10所示。

Eclipse开发Apache Tuscany上的SCA应用

  图10

  点击结束来创建Hello接口。编辑器打开,输入接口的一个方法:

  String hey(String name);

  按下Ctrl+S来保存文件,如图11所示。

Eclipse开发Apache Tuscany上的SCA应用

  图11

  现在创建HelloImpl Java实现类。右键点击Hello接口,选择New – Class。在打开的窗口中,输入Name: HelloImpl,确保hello.Hello在接口列表中。如图12.

Eclipse开发Apache Tuscany上的SCA应用

  图12

  点击完成创建Hello接口。开启Java编辑器,为HelloImpl.hey(…)方法增加如下代码:

  return "Hey " + name;

  按下Ctrl+S保存。如图13所示。

Eclipse开发Apache Tuscany上的SCA应用

  图13

  现在将HelloImpl类转化为一个SCA组件。我们需要创建一个SCA Composite文件来描述组件的服务和绑定配置。

  从菜单中选择New – Other,在向导中选择Tuscany - Composite wizard,如图14所示:

Eclipse开发Apache Tuscany上的SCA应用

  图14

  按下下一步,你就可以创建第一个SCA Composite了。在图15的对话框里,选择Hello/src然后输入:File name: Hello.composite

Eclipse开发Apache Tuscany上的SCA应用

  图15

  按下结束,开启XML编辑器。你现在可以进行SCA composite的描述了。如图16所示。

Eclipse开发Apache Tuscany上的SCA应用

  图16

  增加如下代码:

<component name="Hello">

<implementation.java class="hello.HelloImpl"/>

<service name="Hello">

<binding.ws uri="hello-there"/>

<t:binding.jsonrpc uri="hello-nicer"/>

</service>

</component>

  以上代码描述了一个HelloImpl类完成的SCA组件,提供了一个Hello服务和Web Service(SOAP)和JSONRPC绑定。

  按下Ctrl+S保存,如图17所示。

Eclipse开发Apache Tuscany上的SCA应用

  图17

  大功告成了!运行它吧,右键点击Hello.composite然后从弹出菜单中选择Run As – Tuscany。如图18所示,你的SCA组件正在运行,在http://localhost:8085/hello-there上提供了Hello Web Service,在http://localhost:8080/hello-nicer上提供了JSONRPC服务。

Eclipse开发Apache Tuscany上的SCA应用

  图18

  你可以分别点击这些链接来检查服务是否正常运行,并且获取WSDL和SMD描述,如下所示(图19为WSDL描述,图20为SMD描述)

Eclipse开发Apache Tuscany上的SCA应用

  图19

Eclipse开发Apache Tuscany上的SCA应用

  图20