0

我在Windows下運行Mule Anypoint studio v6.2.4。我有一個應用程序,它從SQL Server數據庫獲取數據記錄並將它們填充到Salesforce組織中。該應用程序是使用示例開發的,並且在當前場景中的一個DB和一個SF參數在mule.{mule.env}.properties文件中定義的情況下工作良好。在Mule Anypoint Studio中定義各種DB&Salesforce訪問信息

現在我需要爲輸入記錄訪問不同的數據庫,並將它們填充到不同的Salesforce組織。每次更改屬性文件中的訪問參數都很乏味且容易出錯。 (例如4 DB的& 4 SF Orgs}

我想要做的是定義訪問參數(針對各種SQL Server數據庫和Salesforce組織),指定DbName和SFName作爲http查詢參數,並讓mule應用程序選擇正確的作爲連接參數。

我將如何完成呢?細節將幫助我,我在騾子是不是精通呢。

感謝

+0

這是你想要的嗎?一個包含DB列表的屬性文件,然後可以通過QUERY PARAMETERS指定將由DBConnector使用的DBName – Alberici

回答

1

你ç烏爾德創建一個屬性文件與數據庫連接的完整列表:

#DB of puppies 
postgres.puppies.user=mule 
postgres.puppies.password=password 
postgres.puppies.host=db-1 
postgres.puppies.db=mule-puppies 

#DB of cars 
postgres.cars.user=mule 
postgres.cars.password=password 
postgres.cars.host=db-2 
postgres.cars.db=mule-cars 

修訂

然後,如果YOUT想從dataweave組件加載你的屬性之一讀取查詢參數:

%dw 1.0 
%output application/java 
--- 
p("postgres." ++ inboundProperties."http.query.params"['db-name'] ++ ".user") 

注意:考慮當QueryParameter.db-name爲空時,你會得到一個異常(你應該處理這個異常),或者,另一種方法是通過處理你自己的數據編織中的空值(https://forums.mulesoft.com/questions/28105/how-do-i-do-a-null-check-in-dataweave.html),例如當你可以定義一個默認數據庫

希望這有助於澄清

+0

當添加新的db或salesforce組織時,這不需要添加新的數據編織組件。我想要的是將db-name查詢參數指定爲「puppies」作爲值,並使用datawave作爲 %dw 1.0 %output application/java --- { user:p(「postgres。」+#[ db-name] +「.user」), ... } 這將消除單獨的選擇/ dataweave塊,並且一個塊可能足夠好。只是不知道如何把它和需要幫助 – kishore

+0

瞭解kishore,你可以檢查我的asnwer UPDATE子標題? – Alberici

+0

謝謝。我需要了解如何在我的mule應用程序中使用批處理流程解決方案。將相應發佈。 – kishore

相關問題