一、簡單的導航 Navigation
我們在修改 faces-config.xml
<navigation-rule> --導航規則
<from-view-id>/pages/index.jsp</from-view-id> View Id 在JSF 中的View Id 是從Web應用程式的環境相對路徑開始計算,設定時都是以 / 作為開頭的
<from-view-id> 是個選擇性的定義,它規定了來源頁面的條件
<navigation-case>中定義各種導覽條件
<from-outcome>中定義當表單結果符合的條件時,各自改導向哪一個目的頁面,目的頁面是在<to-view-id>中定義
二、JSF Expression Language
JSF Expression Language 搭配JSF标簽來使用,是用來存取資料對象的一個簡易語言。
JSF EL 是以#開始,将變量或運算式放在{}之間,變量名稱可以是faces-config.xml中定義的名稱如果是Bean的話,可以通過使用 ‘.’運算符來存取它的屬性,例如:
<f:view>
<h:outputText value="#{user.name}"></h:outputText>
</f:view>
EL的變量名也可以程式執行過程中所聲明的名稱,或者是JSF EL預定義的隐含對象,
<f:view>
<h:outputText value="#{param.name}"></h:outputText>
</f:view>
<f:view>
<h:outputText value="#{param.['name']}"></h:outputText>
</f:view>
在[]之間,也可以放置其他的變量值
<f:view>
<h:outputText value="#{someBean.someMap[user.name]}">
</h:outputText>
</f:view>
如果變量是List類型或陣列的話,則可以在【】中指定索引,例如:
<h:outputText value="#{someBean.someList[0]}">
</h:outputText>
<h:outputText value="#{someBean.someArray[0]}">
</h:outputText>
指定字面常數,對于true、false、字元串、數字、JSF EL會嘗試進行轉換
<h:outputText value="#{true}">
</h:outputText>
<h:outputText value="#{hello world}">
</h:outputText>
三、JSF 的保留字或關鍵字
true false null div mod and or not eq(equals) ne(no equals) lt gt le ge instanceof
使用EL,您可以直接實行一些算術運算、邏輯運算與關系運算,其使用就如同在一般常見的程式語言中之運算。
運算符有 +、-、×、/ or div、餘除 % or mod
三元運算
#{(1==2)?3:4} (expression?result1:result2) expression為true 顯示result1,false 顯示result2.
四、JSF 國際化資訊
資源檔案名稱以 .properties為結尾。
資源檔案名稱由basename加上語言與地區來組成如
basename.properties
basename_en.properties
basename_zh_CN.properties(待續)