
關於Innovator和Web服務
此主題主要面向比較感興趣的開發者。
Innovator服務通過客戶端交換SOAP資訊,SOAP資訊包含AML(Aras 標記語言,由Innovator聲明的一種XML的擴展語言)。Innovator提供一個API,可以在標準的Innovator客戶端啟用或替換客戶端,以使用和擴展Innovator的功能。有關AML和API的更多資訊請參見程式員指南或API 培訓課程.
除了API,Innovator額外提供一種可作為標準可視的Web服務的方式,通過使用“網路上機器對機器的互操作”,它能夠讓其他的應用程式使用Innovator的功能。“Web Service 配置”對象類為Web服務提供定義,並在Innovator內部將其自動發佈。Web服務發佈後,任何通過有效方式連接Innovator伺服器的應用程式都可搜索並使用它。
一個典型的Web Service配置如下所示:
創建和使用Innovator Web Service:
1 創建一個Web服務配置
2 發佈Web服務
3 測試已發佈的Web服務
4 創建可調用Web服務的應用程式
創建Web服務
屬性:
名稱:此項必填且必須唯一。當服務發佈時,它被用來作為服務的名稱。
描述:一個可選填的服務描述。
Web服務配置編輯器
編輯器是一個有著特殊功能的Innovator窗體,用來創建和編輯Web服務。
工具欄
編輯器包含一個常用工具欄,以前的隱藏標籤圖示已經刪除,所以標準的關係表格不會被顯示,在此處加上了發佈按鈕 。
注意:發佈按鈕對於操作菜單也是可用的。
Item Types部分:
按鈕:
+ 將對象類添加到標準查找框。
-- 刪除已選中的對象類
對象類樹:
> 顯示對象類和它們的關係對象類。注:對象類顯示在樹視圖的第一級,關係對象顯示在第二級。
> 每個對象類只能在樹視圖上顯示一次;
> 關係對象類能被添加到樹視圖第一級,如果它們不在樹視圖上;
> 檢查框
標明是否在Web服務中啟用對象類。選中時關係對象類可被選中。它提供一種方式,讓關係對象類只能源於一些的對象類。
注:如果一個第一級的對象類未選中,保存時將自動從Web服務中移除。
> 類型別名
樹視圖顯示對象類的名稱,但每一個已選中的對象類都可以有一個自己的別名,別名可在類型別名文本框中輸入。在Web服務中,類型別名將被使用。
注:類型別名只在對象類被選中時顯示,一次顯示一個。
詳細資訊部分樹視圖上每一個顯示的對象類都可添加詳細資訊。注:當對象類被選中時,它的屬性和操作將被顯示,一次只能顯示一個對象類。
屬性
> 屬性標籤啟用可使一個或多個對象類屬性在Web服務上顯示。
> 右側的“Show System”選項,可讓用戶隱藏或顯示系統屬性。
> 注:所有的類型項屬性都有一個代表其屬性更高級的複選框。
> Innovator數據類型屬性集:string,text,integer,float,deciamal,Boolean,和data都可被Web服務支持。Innovator數據類型屬性:text,multilingualstring,formattedtext.md5,color,list,Filtered list,Color&Foreign能夠被轉化為string類型,數據類型sequence可轉化為整型。
> Web服務上顯示的屬性值是可以為空的,因為他們可能包含空值,然而不同的生成工具,空值顯示可能不相同。
> 別名屬性:屬性標籤上顯示的是屬性名,但每一個選中的屬性可能有一個別名。別名屬性將在Web服務上當做名稱使用。
操作
通過選中操作標籤前的複選框,就能夠在Web服務上啟用一個或多個操作。因此就可以允許Web服務得到而不是添加或更新實例。每一個選中的操作將成為服務上的一個獨立的網路方法。
注:通用的操作可通過操作頁底部的按鈕添加。一個通用操作將成為作用於選中對象類的伺服器方法(這是Innovator框架中一個標準和常用的功能)。
添加通用操作:將方法名打入文本框然後按”添加”按鈕。或者按Ellipsis按鈕查找伺服器端操作,選擇關係方法,按”添加”按鈕。
移除通用操作:不選中複選框然後保存Web服務項。
錯誤列表
當Web服務保存時,可能存在錯誤而導致不能創建Web服務。所有類似的錯誤將顯示在編輯器底部,並且有一個附加按鈕”Fix Errors”將顯示在”+-”按鈕的右側。點擊”Fix Errors”按鈕將取消選定Web服務配置的錯誤發生項。
發佈Web服務
Web服務配置能夠按以下方式發佈:
通過aras的GenerateWS.exe工具人工配置
伺服器上成功配置的可自動發佈
在window server2003上自動發佈:
1 必須安裝net2.0
2 必須安裝aspnet.exe工具
3 必須安裝IIS6管理工具
4 Web服務必須與Innovator安裝在同一伺服器
5 必須編輯Innovator/WSP Publish/web.config檔給windows用戶授權
A 伺服器上誰屬於管理員組
B 有SE_ASSIGNPRIMARYTOKEN_NAME許可權
C 有SE_INCREASE_QUOTA_NAME許可權
有關Web服務發佈的手工配置和自動配置的更多資訊請聯繫 info@bwcs.com.cn or support@aras.com.
在Web上發佈
1 選擇一個Web服務配置
2 運行主菜單上“執行”下的“發佈”操作
3 當服務成功時將出現對話框。
測試一個已發佈的Web服務
1 打開一個IE窗體
2 在地址欄中鍵入如下的URL http://servername/WSname/Innovator.asmx
3 服務將返回一個頁面,如下所示:
調用Web服務
已發佈的Web服務能夠被連接到Innovator伺服器的任何平臺上的任何應用程式使用。
例如:一個用VisualStudio2005創建的.NET2.0Web應用程式連接到名為“Retal Catalog”的Web服務,編碼如下:
注:
這是一個RetailCatalog Web服務的Web引用。
點擊按鈕代碼:
創建一個RetailCatalog InnovatorWebService實例
設置CookieContainer屬性保存登錄憑證
用擁有Innovator憑證的用戶登錄
為服務的返回數組創建一個新實例
將GridView control綁定到服務返回數據
有關調用Web 服務的更多資訊請參閱你的應用程式平臺和工具資訊。