2011-06-23 18 views
2

私のselectOneMenuからオプションを選択すると、InputtextとcommandButtonを含むパネルを生成するコードがあります。コマンドボタンがパネル内で機能しないという問題 私は3つのボタンを1つはPDFレポートを生成し、2つ目は別のページに移動し、3番目のボタンはリセットのために移動します)、テストのためだけにボタンを1つ追加しました。 私のコードJSF ChooseKPI.xhtml:パネル内のコマンドボタンの問題

 <h:form> 

     <br></br> 
     KPIs:<h:selectOneMenu style="width:200px" immediate="true" value="#{ToolsKPI.myChoice}" onchange="submit()" valueChangeListener="#{BeanTest.selectChangeHandler}" required="true" > 
      <f:selectItems value="#{ToolsKPI.getMyListKPI()}" /> 
      </h:selectOneMenu> 

<p:panel header="KPI" style="margin-bottom:10px;width:450px;height:350px;" rendered="#{BeanTest.showPanelBoolClosed}" > 
<h1>KPI1</h1> 
<br></br> 
test <h:inputText autocomplete="on" value="#{BeanTest.test}" /> 
<h:commandButton immediate="true" action="#{BeanTools.testt}" value="Valid" /> 

</p:panel> 



       <p:panel rendered="#{BeanTest.showPanelBoolOpen}" > 

        <br></br> 
        <h1>KPI2</h1> 
      <h:inputText value="test2" /> 
      <h:inputText value="test3" /> 
    </h:form> 

ナビゲーションルール:

<navigation-rule> 
    <from-view-id>ChooseKPI.xhtml</from-view-id> 
      <navigation-case> 
     <from-action>#{BeanTools.testt}</from-action> 
     <from-outcome>true</from-outcome> 
     <to-view-id>Test1.xhtml</to-view-id> 
    </navigation-case> 
    <navigation-case> 
     <from-action>#{BeanTools.testt}</from-action> 
     <from-outcome>false</from-outcome> 
     <to-view-id>index.xhtml</to-view-id> 
    </navigation-case> 

Managed Bean: 

public boolean testt() 
{ 
if(test.equals("a")) 

    return true; 
else 
    return false; 

} 

が、私は別のフォームを追加すべきか?はいの場合、ナビゲーションルールで2番目のフォームをどのように記述できますか?

はたぶんあなたの代わりに、条件付きナビゲーションを使用してみてください、あなたに

+0

@Wadeは、私はちょうどボタンの機能は、このMethodeの作業罰金をテストするには、このメソッドを追加する必要があり、回答していただきありがとうございます。 – rym

+0

マネージドビーンの対象範囲はどれですか? – Maddy

+0

@madhu、managedbeanの範囲は – rym

答えて

0

ありがとう:

http://www.mkyong.com/jsf2/conditional-navigation-rule-in-jsf-2-0/

<navigation-rule> 
    <from-view-id>start.xhtml</from-view-id> 
    <navigation-case> 
     <from-outcome>test</from-outcome> 
     <if>#{BeanTools.testt}</if> 
     <to-view-id>finish.xhtml</to-view-id> 
    </navigation-case> 
</navigation-rule> 

私はあなたから、結果をブール型を使用できるかどうかわからないんだけど... Iこれまでに使用された文字列のみを使用しています。

+0

@DDを要求している、私は条件付きナビゲーションをしようとするとはい、あなたがから-結果、私は前にそれらを使用しているとのブール型を使用することができ、返信していただきありがとうございます。 – rym