画面01でボタンを押すと画面02へ遷移するようにしてみる。
<h:commandButton value="実行" id="btn1" type="button" action="page02"/>
<navigation-rule> <display-name>page01</display-name> <from-view-id>/page01.jsp</from-view-id> <navigation-case> <from-outcome>page02</from-outcome> <to-view-id>/page02.jsp</to-view-id> </navigation-case> </navigation-rule>
画面01で入力した値を画面02に表示してみる。
package com.ziqoo.dataBean; public class Data1Bean { /** 受け渡す値 */ private String str1; public String getStr1() { return str1; } public void setStr1(String str1) { this.str1 = str1; } }
<managed-bean> <description>画面A,B間で値を受け渡す為のBean</description> <managed-bean-name>data1Bean</managed-bean-name> <managed-bean-class>com.ziqoo.jsfSample.bean.Data1Bean</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean>
<h:inputText value="#{data1Bean.str1}" />
<h:outputText value="#{data1Bean.str1}"/>
画面01から画面02へ遷移する際に、何らかの処理を実行するようにしてみる。
public String doSomething() { str1 = new StringBuffer(str1).append(" : ").append(new Date().toString()).toString(); return "page02"; }