Designer 是一款所見即所得設計工具,使用該工具您可以從選項選用板中拖放控件來構建展示頁面。javascript
GForms設計器支持中文及英文兩種語言,具體所使用的語言由用戶的電腦配置環境決定。css
爲了更好的使用GForms設計器,請在打開Eclipse開發平臺後,在右上角切換到GForms透視圖:html
請在透視圖列表中選擇「GForms」,將工做臺切換到以下佈局:前端
在GForms視圖下,能夠直接經過菜單:FileànewàGForms工程,打開建立GForms工程嚮導:java
或直接經過菜單:FileànewàProject,在彈出的建立工程嚮導中,選擇「GForms」分類下的「GForms工程」:node
在建立GForms工程的頁面,錄入工程名稱便可,示例以下圖:git
使用建議:web
在建立GForms工程時,爲了節省時間,請按以下建議對Eclipse進行設置:spring
l 爲了減小Eclipse檢查驗證javascript、css、圖片等文件的過程,在Eclipse的菜單中:WindowsàPreference,在彈出的首選項配置中,找到validation配置頁,勾選上阻止全部項的驗證,以下圖所示:json
l 取消工程的自動編譯功能,由於該功能將致使大量的編譯,下降開發效率。
在GForms視圖下,能夠直接經過菜單:FileànewàGForms文件,打開建立GForms文件嚮導:
或者,直接在須要建立GForms頁的文件夾右鍵菜單選擇New-àFile:
爲了更好的使用GForms設計器,請在打開Eclipse開發平臺後,在右上角切換到GForms透視圖:
GForms平臺所支持的全部的控件,包括17個核心控件(或基礎控件)、8個容器控件、9個擴展控件及6個圖形控件,同時還包括上下文菜單等控件類型。
能夠選擇任意一個控件圖片,而後拖拽到右邊的設計器區域,便可在設計器中添加控件。
使用提示:若是控件面板已經關閉,有兩種方式打開控件面板:
方法一:則能夠經過在Eclipse的菜單欄選擇:WindowsàShow View,而後在彈出的視圖對話框中選擇Palette便可再次打開控件面板;
方法二:在設計器的右鍵菜單中選擇「打開控件面板視圖」。
設計器包括5個標籤頁:
Ø 設計:UI設計界面。
Ø 輔助:上下文菜單及上傳下載控件專用。
Ø 腳本:
編寫JavaScript腳本,支持着色、提示等功能:
Ø XML:
XML編輯器,用於編輯當前GForms的配置信息或XML數據片斷。
注意:
l 每一個XML片斷,必須提供一個當前頁惟一的ID用於標識該XML片斷,而且在javaScript視圖中,能夠經過XML的ID去訪問或操做XML數據片斷。
l 每一個XML片斷的只能有且僅有一個根元素,而且須要存放到<xml id=」xxx」></xml>以內。
l 每次編輯xml片斷時須要確保是合法的XML,不然gforms編輯器拒絕保存。
Ø 預覽:
提供快速預覽當前設計結果,默認使用的瀏覽器爲Eclipse內置的IE瀏覽器,若是目標運行瀏覽器爲其餘瀏覽器,請在Eclipse之中進行瀏覽器設置。
設置瀏覽器方式爲在菜單Windowsà首選項:
請在進行瀏覽以前,把當前GForms應用部署到服務器上,如Tomcat或IBM Webshpere Application Server、weblogic等服務器之中,並在當前GForms應用的首選項中同步配置(應用發佈及同步配置,請參考應用首選項配置使用手冊)。
使用提示:
l GForms應用發佈功能支持應用部署到本地服務器或遠處服務器上。
l 預覽時會直接把當前GForms表單發佈到服務器。
l 除了在預覽出檢查開發結果,也能夠在外部瀏覽器,如Firefox、Chrome、IE中查看開發結果(在預覽頁面右鍵選擇屬性便可查看訪問URL路徑)。
設計器的包含豐富的右鍵菜單,方便開發人員快捷開發,用戶選擇不一樣的控件會有不一樣的右鍵菜單,其中在設計器的空白位置右鍵菜單以下圖所示:
除常規的編輯操做:剪切、拷貝、粘貼、重複、刪除、重作、取消外,還有一些功能菜單項:
菜單項 |
功能說明 |
備註 |
分欄 |
將把當前右鍵菜單的控件橫行或縱向分裂爲兩個 |
|
添加狀態欄 |
每一個GForms頁面只能有一個狀態欄 |
運行時能夠經過API動態設置狀態欄的內容 |
工具欄 |
每一個GForms頁面只能有一個工具欄 |
能夠經過工具欄的子菜單項:添加項:在工具欄增長一個菜單項; 添加分割線:在工具欄添加一個豎線; 刪除工具欄:刪除所添加的工具欄 |
查看屬性 |
查看所選擇空間的屬性,若是屬性面板關閉則能夠經過該功能打開屬性配置視圖 |
|
打開控件面板 |
打開或顯示設計器的控件面板 |
爲方便開發,GForms設計器提供了控件類型轉換功能,能夠方便的把某個控件轉換爲所須要的其餘控件。
當選擇某個具體的控件時,如Input輸入框,其上下文菜單以下圖所示:
「轉換到」子菜單容許把當前所選擇的控件轉換爲其餘類型。
當選擇是容器控件:group、groupbox、fieldset、重複容器、表格時:
若是轉換爲表格,則轉換後的控件以下:
在設計器中,選擇幾個控件,而後能夠經過工具欄提供的功能快速實現對其、大小配置、刪除、複製、取消/重作功能。
視圖是開發GForms表單的重要組成部分,GForms的相關視圖包括:控件屬性視圖、模型視圖、模型實例視圖、Web Service視圖及模型/實例屬性視圖。
GForms視圖打開方式:在WindowsàShow views,將彈出以下對話框,在對話框中選擇「GForms設計器」下的某個視圖便可:
顯示或配置在設計器「設計」及「輔助」兩個選項卡中建立的控件。
模型是GForms的核心要素,是整個GForms頁面的重要控制配置,如能夠配置模型實例、綁定、提交(submission)、操做等,詳細功能使用說明請查看「模型」章節。
模型實例視圖提供全部模型實例樹展示,是GForms的數據源或提交的數據載體,GForms模型實例本質上是XML數據片斷,能夠在模型實例樹中建立元素、屬性、子元素等。
若是在GForms頁面建立了web服務(使用WSDL或web服務URL),則可使用Web Service視圖對web服務進行管理。
對模型視圖、模型實例視圖中的項屬性配置,須要在模型/實例屬性視圖中進行配置:
在模型視圖中進行模型管理。
屬性名稱 |
描述 |
Schema |
一個模型能夠有多個schema文件,開發人員能夠經過schema文件選擇器選擇多個文件,若是手動錄入,則多個schema文件以空格分隔;文件的位置爲相對於WebContent目錄的絕對路徑。 |
schema文本 |
模型的schema文本,必須是完整的schema文件內容 |
標識 |
模型的ID,是運行時訪問模型的重要配置 |
名稱空間 |
模型全部的名稱空間列表,從schema文件或schema文本中抽取 |
注意:所配置的schema文件須要同步到gforms服務器上,而且須要在運行時配置文件config.properties中配置appURL,不然會報以下錯誤:
詳細參考《GForms FAQ》文檔。
在模型樹的根節點或模型視圖的工具欄中均可以進行模型的建立:
l 模型樹根節點:
l 模型視圖工具欄:
模型的建立包含三種方式:
Ø 建立空模型:將建立一個只包含ID的空模型,模型下不包含任何模型實例、綁定、動做等信息。
Ø 從XML建立模型:將建立一個包含ID的模型,模型下面建立一個從XML數據所構建的模型實例。
Ø 從schema建立模型:建立一個模型,而且在模型下建立一個根據所選擇的schema構建的模型實例及schema中的數據類型綁定。
在彈出的對話框中粘貼須要建立模型的XML數據片斷,XML數據片斷能夠有根元素,也能夠沒有。
點擊「OK」後,所建立的模型位於模型樹中,並在模型下方有模型實例:
並能夠在模型實例視圖中看到instance2模型實例。
GForms設計器支持從schema建立模型:
Ø 第一步:輸入schema文本
schema文件文本以下:
<xs:schema xmlns:my="http://commerce.example.com/payment" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://commerce.example.com/payment" elementFormDefault="qualified"> <xs:element name="payment"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:choice> <xs:element ref="my:cc" /> <xs:element ref="my:exp" /> <xs:element ref="my:expenses" /> </xs:choice> </xs:sequence> <xs:attribute name="as" type="my:paymentAs" /> </xs:complexType> </xs:element> <xs:element name="cc" type="my:cc" /> <xs:element name="exp" type="xsd:gYearMonth" /> <xs:element name="expenses" type="my:expenses" /> <xs:simpleType name="cc"> <xs:restriction base="xsd:string"> <xs:minLength value="12" /> <xs:maxLength value="19" /> <xs:pattern value="[0-9]+" /> </xs:restriction> </xs:simpleType> <xs:simpleType name="paymentAs"> <xs:restriction base="xsd:string"> <xs:enumeration value="cash" /> <xs:enumeration value="credit" /> </xs:restriction> </xs:simpleType> <xsd:simpleType name="expenses"> <xsd:restriction base="xsd:decimal"> <xsd:fractionDigits value="2"/> </xsd:restriction> </xsd:simpleType> </xs:schema> |
第二步:選擇建立模型的元素
點擊「Finish」後,所建立的模型位於模型樹中,並在模型下方有模型實例:
能夠看到在模型下方有一個模型實例及若干個綁定,綁定的定義從schema文件中抽取元素數據類型做爲綁定的數據類型。
並能夠在模型實例視圖中看到instance2模型實例。
同時,所引入的schema內容將做爲所建立的模型的schema文本內容,請選擇「model3」,而後在屬性視圖中能夠看到:
注意:模型所引入的schema內容能夠做爲運行時數據校驗的依據,上述schema所建立的模型實例中,若是拖拽as屬性到設計器,則默認會構建一個下拉框控件,控件的兩個選項爲cash、credit;同時在運行時綁定到數據節點instance('instance2')/pay:payment/pay:cc的控件,將校驗其長度爲12。
在模型樹的模型節點右鍵菜單中能夠看到建立模型實例的功能菜單項:
模型的建立包含三種方式:
Ø 建立空模型實例:將建立一個只包含ID的空模型實例,模型實例不包含任何XML數據節點。
Ø 從XML建立模型實例:將建立一個包含ID的模型實例,模型實例下面建立一個從XML數據所構建的XML數據結構。
Ø 從schema建立模型實例:建立一個模型實例,而且在模型實例下建立一個根據所選擇的schema構建的XML數據節點結構。
在彈出的對話框中粘貼須要建立模型實例的XML數據片斷,XML數據片斷能夠有根元素,也能夠沒有。
點擊「OK」後,所建立的模型實例位於剛剛所選的模型下:
並能夠在模型實例視圖中看到instance5模型實例。
GForms設計器支持從schema建立模型實例:
Ø 第一步:輸入schema文本
schema文件文本參考「從schema建立模型」章節。
第二步:選擇建立模型的元素
點擊「Finish」後,所建立的模型位於模型樹中,並在模型下方有模型實例:
並能夠在模型實例視圖中看到instance6模型實例。
注意:所引入的schema內容不會做爲運行時數據校驗的依據,而是僅僅從schema中選擇某個的元素來構建一個模型實例,簡化模型實例建立,並不會從schema文件中讀取任何其餘約束信息,如元素數據類型等。
選擇模型樹中的某個模型實例節點,在「屬性視圖」中能夠查看或配置模型是的相關配置項,其中src配置項表示模型實例的數據來自於某個文件。
能夠在模型樹中建立綁定,綁定是對某個數據節點的各類約束定義,包括對數據節點定義其的數據類型、只讀條件、依賴條件、計算公式、約束配置等。
在模型樹的模型節點右鍵菜單中能夠看到建立綁定的功能菜單項:
新建綁定後,在模型下方出現新建的綁定,此時在「屬性視圖」中能夠對該綁定進行屬性配置,以下圖所示:
對於一個綁定,首先要定義其節點,節點能夠經過XPath編輯器編輯節點選擇的xpath表達式。
屬性名稱 |
描述 |
節點 |
綁定所定義的數據節點,xpath表達式 |
必填項約束 |
xpath表達式,計算結果爲布爾值,定義數據節點的required條件,運行時若是知足該條件則引用該綁定的數據節點的控件將展示爲必填項 |
標識 |
綁定的ID |
計算 |
xpath表達式,計算結果爲字符串,定義數據節點的計算公式,表示節點不是由用戶輸入的,而是根據公式動態計算 |
類型 |
節點的數據類型,數據類型包括xpath所定義的數據類型,幷包括當前數據模型的schema中的數據結構 |
相關性約束 |
xpath表達式,計算結果爲布爾值,定義數據節點與其餘節點的依賴關係 |
約束 |
xpath表達式,計算結果爲布爾值,定義數據節點約束條件,運行時若是知足該條件則引用該綁定的數據節點的控件將展示爲錯誤狀態 |
約束消息 |
只有定義了約束該配置才生效,這樣在運行時若是違反該綁定的約束,則會使用該約束消息提示用戶,約束消息的構建請參考格式化校驗手冊。 注意:消息列表來自於全局約束消息集合。 |
只讀 |
xpath表達式,計算結果爲布爾值,定義數據節點只讀條件,運行時若是知足該條件則引用該綁定的數據節點的控件將展示爲只讀狀態 |
瀏覽 |
xpath表達式,計算結果爲布爾值,定義數據節點瀏覽態條件,運行時若是知足該條件則引用該綁定的數據節點的控件將展示爲瀏覽狀態 |
配置提示:
l xpath表達式:既能夠手動錄入xpath表達式,也能夠經過xpath編輯器輔助建立xpath表達式。
l 子綁定:綁定下方還能夠包含綁定,用於定義父綁定的數據節點的不一樣配置項。一般不會使用到子綁定。
提交submission是GForms前端與後端服務交互的橋樑,submission的建立方式爲:在模型視圖中---》選擇模型樹---》選擇某個須要建立提交的模型—》右鍵菜單—》「提交」:
新建「提交」後,在模型下方出現新建的提交,此時在「屬性視圖」中能夠對該提交進行屬性配置,以下圖所示:
對於一個提交,必須定義資源路徑,資源路徑能夠經過xpath定義,也能夠指定一個靜態的資源路徑URL。
屬性名稱 |
描述 |
數據引用(Ref) |
綁定所定義提交所提交的數據節點,xpath表達式,可爲空 |
編碼 |
提交時系列化的數據編碼,默認爲UTF-8 |
標識 |
提交的ID,是send動做引用該標識進行動做提交 |
方法 |
配置提交的mehtod,可選的有:post、get、put、delete,默認爲post |
分隔符 |
默認爲&,當「方法」method爲get、delete時,提交的資源路徑將根據數據將進行編碼構建。 如提交的數據爲:<input3>test</input3>,資源URL爲:http://localhost:8080/test/weather,則實際提交的資源URL爲: http://localhost:8080/test/weather?input3=test |
介質類型 |
提交到後臺的請求頭Accept(方法爲get、delete時)或Content-Type(方法爲Post、put時)內容,可選的有:application/xml、text/xml、application/json、text/json、application/x-www-form-urlencoded、application/soap+xml,默認爲application/xml |
模式(mode) |
提交方式,可選的同步、異步,默認爲異步 |
目標綁定 |
xpath表達式,當提交數據返回時,須要替換的目標模型實例節點,當「替換」爲「實例」、「文本」時該配置有效,不然無效。 |
實例 |
提交數據返回時,須要替換的目標模型實例(當「替換」配置爲模型實例時有效)。注意:該配置不會對提交的數據產生任何約束,若是要提交模型下非默認模型實例到後端,則請配置ref爲那個非默認模型實例的xpath便可 |
替換 |
當提交數據返回時,處理方式:所有、實例、文本、空,默認爲所有,其中: 所有:表示響應數據將替換當前頁; 實例:表示將使用響應信息替換某個模型實例; 文本:表示將把響應信息做爲文本添加到某個模型實例節點; 無:表示不做任何處理。 |
相關性約束 |
是否須要提交relevant屬性爲false的數據節點,默認爲false,表示提交全部節點(relevant是經過配置節點的綁定relevant相關屬性) |
校驗 |
是否對提交到數據進行校驗,若是校驗失敗則提交失敗並拋出xforms-submit-error事件 |
系列化 |
XML模型實例系列化類型,,可選的有:application/xml、application/x-www-form-urlencoded、multipart/related 、multipart/form-data 、none,默認爲application/xml |
資源XPath |
提交的後端服務URL路徑,經過XPath動態從模型實例中獲取 |
資源值 |
提交的後端服務URL路徑,若是配置了「資源XPath」則運行時忽略該配置 |
soap action |
資源URL爲web服務時有用 |
配置提示:
l 相關性約束:若是配置爲true則表示當系列化須要提交的模型實例或模型實例節點時,將把那些配置了綁定屬性relevant的數據節點,若是計算relevant爲false,則該節點將不被系列化。
l 介質類型:若是後端服務依賴於所傳遞前端所發送的Accept,如spring Restfull,此時當方法爲post時,須要格外注意,須要配置replace爲instance並配置媒體類型爲合適的類型才能實現該目的。
提交能夠包含若干個動做,這些動做的事件只能爲:
xforms-submit、xforms-submit-error、xforms-submit-done,事件具體描述請參考「GForms標準事件」。
操做是GForms平臺提供的標準操做,操做建立方式爲:在模型視圖中---》選擇模型樹---》選擇某個須要建立動做的模型—》右鍵菜單—》「動做」:
GForms平臺提供的標準動做以下表:
動做 |
動做描述 |
reset |
把所選擇的模型下的全部模型實例的內容進行重置 |
rebuild |
對目標模型的全部模型實例數據結構進行重建:綁定、模型實例等,該操做將把經過XMLUtil工具所設置的節點值綁定到UI |
recalculate |
從新對目標模型全部的綁定計算器calculate配置屬性 |
revalidate |
該操做將對目標模型中的全部的模型實例進行驗證處理(包括readonly、是否必須、是否瀏覽態、合法性校驗等) |
message |
該操做將彈出一個提示信息對話框 |
setValue |
爲所選擇的模型實例目標節點設置節點內容,該操做執行後,目標數據節點的值將被更新,同時引用目標數據節點的全部控件UI將自動被更新 |
setFocus |
該操做將觸發焦點聚焦在目標控件上。 |
toggle |
使用toggle將選擇某個case page,也就說toggle操做的目標對象爲某個case page。 |
action |
action操做能夠組合多個其餘操做,從而當action的事件知足時,觸發action下的每一個操做進行執行 |
send |
發送操做將觸發某個submission執行。 |
unload |
從目標控件卸載資源,其實就是把目標控件的html元素清空,而且若是目標控件是load動做的容器,則會把subform也銷燬 |
load |
加載資源到當前頁面,該資源能夠是任何的資源,如html或另一個GForms頁面等。 |
setindex |
該操做執行的目標對象爲Repeater或Table控件,將選中目標控件的某行,行號從1開始。 |
delete |
刪除操做將從數據集合中刪除指定位置的記錄。 |
insert |
該操做把某些現有節點或目標nodeset的最後一個節點添加到目標nodeset的父節點中 |
dispatch |
用於向目標分發某個具體的事件 |
script |
調用執行javascript,包括javascript原始代碼,如alert等,同時也支持調用javascript函數。 |
建立操做後,能夠在「屬性視圖」中配置各個操做的具體配置信息:
具體每一個動做的配置請參考「GForms操做」部分具體解釋。
配置提示:
l 在模型實例樹中配置的動做將做爲全局動做,而在控件中所配置的動做則僅僅是針對某個控件的。
l action動做:是一系列動做的集合,全部子動做的事件均與action動做同樣。
在運行時,動做的執行是按順序進行的,排在前面的將先執行,靠後的後執行,在不少時候,特別是form載入時,須要請求後臺數據,而在請求執行可能須要設置一些請求參數,設置數據節點的值有兩種方式:
1)爲頁面配置xforms-init事件,並在事件中經過XML工具設置模型實例相關節點的值。
2)經過標準動做setValue設置數據節點的值,咱們推薦使用該方式,可是須要注意setValue動做的位置,應該放在send動做以前:
能夠經過動做右鍵菜單的「上移動做」、「下移動做」實現。
在模型實例樹中能夠刪除任何提交、綁定、動做、模型實例及模型:
選擇要刪除的組件,而後右鍵菜單中點擊「刪除」便可刪除組件。
在模型實例視圖中進行模型管理。
模型實例的建立在「模型視圖」的模型樹中進行,具體參考「模型管理」中的「建立模型實例」。
能夠在模型實例中手動建立實例數據節點、元素、節點文本等信息。
若是配置模型實例的介質類型爲json,則模型實例視圖以下(增長了對json的操做):
屬性名稱 |
描述 |
src |
定義模型實例使用一個後臺靜態的XML文件數據做爲模型實例的數據源 |
標識 |
模型實例ID,是運行時引用模型實例的惟一標識 |
介質類型 |
模型實例的數據源類型,目前支持xml、json兩種類型 |
若是爲模型實例配置了xml或json文件數據源,可是該文件不存在或沒有同步到gforms應用,則會報以下錯誤:
配置提示:
1)若是爲模型實例配置了src屬性,而且同時配置了數據節點,則src優先於數據節點,即所配置的數據節點在運行時失效。
2)src的文件路徑必須相對於webContent目錄的絕對路徑,而且文件必須存在根目錄元素且該根目錄至關於模型實例的data根節點。
<transaction> <date>2004-05-06</date> <desc>Salery</desc> <withdraw>false</withdraw> <amount>5000.00</amount> </transaction> |
引用date的ref xpath表達式爲:instance(‘test’)/date。
若是配置模型實例的類型爲json,除了數據格式與XML不同,在設計器使用及運行時均與XML一致,如則設計器會把json字符串使用XML樹的方式展示出來,運行時也能夠經過xpath訪問json節點。
可是,json類型的模型實例,不能夠爲元素節點建立屬性、不可配置名稱空間,同時模型實例的虛擬根節點data名稱修改後再次打開將仍然爲data。
若是爲json類型的模型實例配置數據源文件,則數據源文件必須爲json格式,且第一層必須是對象,樣式以下:
{ "options":[ { "label":"PixUnit", "value":"px" }, { "label":"percentUnit", "value":"percent" } ] } |
運行時的xml樹狀結構爲(根節點data爲輔助節點):
選擇模型實例樹中的任何一個樹節點,就能夠在「屬性視圖」中看到其配置,並能夠修改其配置信息。
能夠在模型實例樹的實例節點、元素節點的右鍵菜單使用該功能,該功能將把所選的模型實例、元素的數據結構轉換爲XML字符串。
能夠在模型實例樹任意元素節點的右鍵菜單使用該功能,該功能將把所粘貼的XML數據片斷建立到元素節點下方。
粘貼後的模型實例結構:
配置提示:所粘貼的XML能夠不存在根元素。
該功能只有當配置模型實例的介質類型爲json時可用。
能夠在模型實例樹的實例節點、元素節點的右鍵菜單使用該功能,該功能將把所選的模型實例、元素的數據結構轉換爲JSON字符串。
該功能只有當配置模型實例的介質類型爲json時可用。
能夠在模型實例樹任意元素節點的右鍵菜單使用該功能,該功能將把所粘貼的JSON數據片斷建立到元素節點下方。
粘貼後的模型實例結構:
配置提示:粘貼json爲模型實例數據後,模型實例樹將以xml方式查看json,如上圖所示。
在任意一個沒有元素文本的元素的右鍵菜單中使用該功能爲元素添加子元素。
能夠爲任意一個元素增長屬性。
能夠刪除除模型實例節點、模型實例根節點外的任意一個元素、屬性或文本節點。
能夠拓展任意模型實例數據節點到設計器,從而構建UI界面:
如把上圖的「transaction」節點拖拽到設計器後,所構建的UI以下圖所示:
各個控件的節點引用配置以下:
控件 |
節點引用ref |
groupbox |
instance('instance1')/transaction |
date |
date |
desc |
desc |
withdraw |
withdraw |
amount |
amount |
能夠看出,除外層的groupbox容器使用絕對路徑引用模型實例節點外,其餘幾個控件均使用相對路徑。
GForms對web服務提供了支持,能夠很是快捷的把一個web服務導入到GForms。
在「控件面板」的最下方找到「web服務」,拖拽該圖標到右邊的設計器,將啓動新建web服務嚮導過程:
第一步:指定web服務路徑
支持使用本地wsdl文件或遠處服務器的WSDL文件。
第二步:選擇web服務服務、端口、操做
一次只能添加一個web服務操做到GForms,若是要添加多個操做須要執行屢次新建web服務嚮導。
第三步:配置是否建立web service UI、是否載入時調用web服務
若是須要自動構建web service的UI界面請勾選上「自動構建表單UI元素」;若是須要在form載入時就調用web服務,則請勾選「載入時調用web服務」。
當點擊「Finish」按鈕後,嚮導過程結束,將自動打開「web服務」視圖:
在視圖中能夠看到剛纔所構建的web服務操做信息,web服務視圖詳見下一節。
同時,在模型視圖中也能夠看到所建立的web服務相關的模型、模型實例及提交:
注意:開發人員不可在模型樹中刪除web service相關的組件,如模型、模型實例、提交組件,可是能夠在新添加組件,如添加動做、綁定、提交等新組件。
在web服務視圖中專門對GForms中的web服務進行管理。
第一層元素:web服務名稱。
第二層元素:web服務的操做。
第三層元素:web服務的請求、響應實例及提交
第四層元素及如下元素:請求或響應的模型實例結果。
在web服務節點機web服務操做節點右鍵菜單能夠執行刪除web服務及web服務操做。
在web服務的模型實例元素節點能夠查看XML結構。
能夠從web服務樹中除第一層web服務樹節點不能拖拽到設計器構建UI外,其餘層的節點都可以:
構建的UI如上圖所示,將包含請求模型實例、提交及響應模型實例。
在運行時當用戶點擊提交按鈕時,將調用遠程web服務,並獲得響應消息填充到響應UI中。
構建的UI如上圖所示。
同模型實例樹中拖拽數據節點同樣,請參考「模型實例」—》「建立UI」章節。
提交動做,將構建一個提交按鈕,按鈕配置:
能夠看到按鈕的類型爲submit,而且配置了提交爲web服務的操做。
GForms平臺提供XPath編輯器,輔助開發人員開發xpath表達式。
分爲三個區域:選擇區域、編輯器區域及問題顯示區域。
其中,選擇區域:
模型實例樹:包含全部的模型實例數據節點,包括屬性及元素,若是須要選擇某個節點請雙擊或拖拽到編輯器區域便可。
函數樹:包含全部的xforms1.0及xforms1.1所支持的全部xpath,每一個函數具體使用說明請參考相關xpath手冊。
操做符樹:xpath所支持的操做。
配置提示:
l 若是須要選擇模型實例自身,則請在模型實例樹上選擇模型實例樹節點或模型實例根節點便可實現。
l GForms運行時對數學xpath提供支持,可是因爲使用場景較少故沒有在GForms的xpath編輯器中提供出來。GForms運行時支持的數學xpath函數列表:
abs、acos、asin、atan、atan二、constant、cos、exp、log、power、sin、sqrt、tan。
這些函數能夠在設計器中手動編寫。
www.ghpaas.com
電話: 13601178468
Email: ghpaas@163.com