標籤:style blog http io 使用 ar strong for 檔案
1 課程簡介
通過本課程熟悉WCF-Oracle適配器的的使用
2 準備工作
1. 建立BizTalk空項目
2. 配置BizTalk項目的應用程式名稱及程式簽名。
3. Oracle資料庫
( Oracle Database Expression http://www.oracle.com/technetwork/products/express-edition/downloads/index.html )
4. Oracle SQL developer (http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html )
5. BizTalk WCF Operation Promote Pipeline Component ( http://btsoperationpromote.codeplex.com )
3 示範3.1 產生資料庫表相應操作的Schema
註:建立BizTalk項目過程請參見:《BizTalk開發綜合實驗》
1. 右擊項目,添加產生項
3.2 點擊Consume Adapter Service
2. 綁定類型中選擇sqlBinding
3. 在適配器屬性配置的安全選項中輸入賬戶資訊
4. URI屬性中輸入伺服器位址及資料庫名稱
5. 在綁定視窗中將“UseAmbientTransaction”選項置為False,“EnableBizTalkCompatibilityMode”置為True
6. 點擊OK儲存
7. 點擊連線按鍵
8. Select contract type選擇Client(Outbound Operations), 在category的Tables中選擇 contacts,在操作中選擇Insert、 Select、Update和Delete。
9. 產生嚮導會產生相應的Schema檔案及繫結檔案
10. 產生並部署項目
3.3 發布Schema為WCF-BasicHttp服務
1. 點擊Visual Studio 工具菜單中的BizTalk WCF Service 發布嚮導。
2. 點擊下一步
3. 在傳輸類型中選擇WCF-BasicHttp,並選擇在剛才部署的BizTalk應用程式中建立接收埠
4. 在建立依法中選擇發布Schema為WCF服務
5. 建立Select跟Insert方法
6. 右擊方法相應的請求與輸出參數,選擇Schema類型
7. 根據命令空間選擇相應的Schema
8. 配置好相應的操作與參數類型
輸入相應的命名空間
9. 輸入URL地址,啟用匿名訪問
10. 確認配置並點擊建立
11. 建立完成
12. BizTalk應用程式中會有相應的接收埠被建立
13. 開啟IIS 7 管理器,建立應用程式集區BTSAppPool,將運行賬戶改為Administrator
14. 修改WCF-SQLDemo應用程式的運行池為BTSAppPool
15. 修改Web應用的Web.config(預設資料夾位置為:C:\inetpub\wwwroot\WCF-SQLDemo),開啟通過http get 的方式擷取服務的WSDL
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
3.4 配置WCF-SQL傳送埠
1. 右擊BizTalk管理主控台的應用程式,右鍵選擇匯入Binding
2. 選擇專案檔夾下的WcfSendPort_SqlAdapterBinding_Custom.bindinginfo.xml
3. BizTalk將自動產生傳送埠
4. 需要在在傳送埠中重新設定資料庫使用者名稱和密碼
5. 配置傳送埠的傳送管線為PromotePipeline
6. 在傳送埠的設定檔中配置訂閱條件,即接收埠名稱為WCF-BasicHttp發布嚮導產生的接收埠名稱:
7. 為便於測試,將傳送埠傳輸選項的重試次數和間隔時間設為0
3.5 測試服務
- 啟動WCFOracleDemo應用程式
- 開啟soapUI,新建立項目,在BTSOracleWCF.svc訪問地址後面加上 ?wsdl ,即可得到WSDL
- 編輯相應的Insert、Select、Update資料,並請求。將接收到相應的返回資料。
- 使用SQL Developer 查詢資料
3.6 輪詢Oracle資料庫
- 在BizTalk中右鍵選擇產生項目
- 使用適配器服務
- 在適配器服務配置中點擊配置,在串連配置中輸入使用者和密碼,在URI屬性中的輪詢標識中輸入唯一的數位識別碼
11. 在綁定屬性中配置輪詢命令為:select * from contacts , 同時設定“UseAmbientTransaction”為False,“EnableBizTalkCompatibilityMode”為True
- 點擊OK儲存,點擊Connect串連到Oracle資料庫。
- 在contract type中選擇Service(Inbound Service),同時點擊“/”根節點,在右側可用的類別與操作中選擇POLLINGSTMG。
- 點擊OK儲存,系統將會產生相應的輪詢架構與綁定
- 在BizTalk管理主控台的應用程式中將產生的綁定匯入到應用程式中,系統將會自動設定接收埠
8. 建立發送到File類型的傳送埠,訂閱Oracle的輪詢資料
9. 啟動輪詢接收埠在檔案傳送檔案夾將自動會有相應的檔案
3.7 Oracle資料庫指令碼參考
CREATE TABLE CONTACTS ( ID NUMBER(*, 0) NOT NULL , NAME VARCHAR2(20 BYTE) NOT NULL , PHONE VARCHAR2(20 BYTE) , EMAIL VARCHAR2(100 BYTE) , IM VARCHAR2(100 BYTE) , ADDRESS VARCHAR2(200 BYTE) , CONSTRAINT CONTACTS_PK PRIMARY KEY ( ID ) ENABLE ) create or replace PROCEDURE ADDCONTACT ( PARAM0 IN NUMBER , PARAM1 IN VARCHAR2 , PARAM2 IN VARCHAR2 , PARAM3 IN VARCHAR2 , PARAM4 IN VARCHAR2 , PARAM5 IN VARCHAR2 ) AS BEGIN Insert Into CONTACTS(ID,NAME,PHONE,EMAIL,IM,ADDRESS) Values(PARAM0,PARAM1,PARAM2,PARAM3,PARAM4,PARAM5); END ADDCONTACT; |
BizTalk動手實驗(十二)WCF-Oracle適配器使用