1. 程式人生 > >muleESB的第一個開發例項-HelloWorld(二)

muleESB的第一個開發例項-HelloWorld(二)

上篇博文我們簡單的介紹了什麼是ESB,教給了大家如何下載和安裝了Studio。

假設

在學習本教程之前,假設您已經下載、安裝並啟動了Anypoint Studio。

建立新專案

  1. 單擊File,選擇New>Mule Project
  2. 開啟新的Mule專案嚮導,輸入我們第一個專案的名稱:My First Project,然後單擊Finish。
    這裡寫圖片描述
  3. 開啟一個新的空白專案,下面是用於快速構建Mule專案的各種檢視:
    這裡寫圖片描述
  4. 開始設計我們的專案,從面板中拖拽一個HTTP聯結器放到畫布上。
    注意:Studio會自動用流包裝聯結器,從而節約手動建立流的步驟。
    這裡寫圖片描述
  5. 拖動一個PayLoad(負載)元件到畫布中HTTP聯結器的旁邊,同樣,也把它新增到流中。
    這裡寫圖片描述
  6. 單擊XML配置選項卡(畫布的底部),我們可以看到用XML表示的應用程式。
    Studio有兩種編輯方式可以確保你在圖形介面中新增或更改的操作反映在XML配置檔案中。(使用下面的選項卡來檢視應用程式的圖形和XML配置。)
    這裡寫圖片描述
    這裡寫圖片描述
  7. 單擊MessageFlow(訊息流)選項卡回到圖形化編輯器,然後單擊Save圖示儲存專案。

配置專案

現在你已經在Studio中構建了一個基本的應用程式,下面我們需要配置每個單獨的元素。

  1. 在畫布上單擊HTTP聯結器開啟其屬性編輯器(見下圖)。
    HTTP聯結器通過HTTP或HTTPS協議可讓Mule應用程式連線到Web的任何資源。
    為了讓HTTP聯結器能夠正常工作,需要配置基本資訊。聯結器必須要配置的引數:Path(路徑)以及在聯結器配置中,需要配置名稱、主機和埠。其他引數配置都是可選的。
    這裡寫圖片描述


    Path(路徑)已經填充了預設值,斜線/,我們可以在聯結器配置中使用預設值也可以更改Host到localhost。

    在聯結器配置中,可以提供建立另一個元素的引用。

  2. 單擊綠色聯結器配置旁邊的加號+來建立一個被聯結器引用的全域性元素。一個全域性元素是一個單獨的元素,封裝了一些可重用的配置屬性,其他的所有聯結器都可以使用它。
    這裡寫圖片描述

  3. 開啟一個新視窗,其中包含配置幾個引數。保留所有引數的預設值,單擊OK關閉視窗並建立一個全域性元素。
    這裡寫圖片描述

    注意:返回到聯結器,在聯結器配置中填充剛才建立元素的引用。會注意到聯結器的屬性編輯器和在畫布上的聯結器中紅色的警示標誌消失了。

  4. 在畫布上單擊Set Payload 元件開啟其屬性編輯器(見下圖)。

  5. SetPayload元件將訊息有效負載設定為一個定值,將該值設定為Hello World !或者其他你喜歡的文字字串。
    這裡寫圖片描述

  6. 再次單擊XML配置來檢視我們修改之後的XML配置(參見下面的程式碼)。單擊Save圖示以儲存您的更改。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking" xmlns:json="http://www.mulesoft.org/schema/mule/json" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
    xmlns:spring="http://www.springframework.org/schema/beans" version="EE-3.6.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/json http://www.mulesoft.org/schema/mule/json/current/mule-json.xsd
http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd">

    <http:listener-config name="HTTP_Listener_Configuration" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>

   <flow name="my_first_projectFlow">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/>
        <set-payload doc:name="Set Payload" value="Hello World!"/>
    </flow>
</mule>

部署專案

Anypoint Studio和自己的嵌入式伺服器捆綁在一起,適合測試時部署程式碼。在生產環境中之前,你嵌入式伺服器上部署應用程式可以看到它的工作情況和執行任何除錯的活動,例如:一個本地伺服器或CloudHub等。

  1. 在Package Explorer中右鍵單擊專案名稱,然後選擇Run As > Mule應用程式。
    這裡寫圖片描述
  2. 嵌入式伺服器上啟動應用程式,在控制檯中顯示其行為。完成後,控制檯訊息讀取:開始應用“my_first_project”
    這裡寫圖片描述

呼叫專案

  1. 開啟瀏覽器
  2. 輸入呼叫應用程式的URL(這個地址是HTTP聯結器的預設配置):
    http://localhost:8081
  3. 應用程式通過HTTP端點接受請求,然後設定負載,設定負載“Hello World !”,最後,你可以在您的瀏覽器中看到HTTP聯結器返回這個載荷響應。
    這裡寫圖片描述
  4. 停止應用程式使用在控制檯中Terminate圖示:
    這裡寫圖片描述