天天看點

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