2012-01-23 6 views
0

メソッドにパラメータとして値(テキストボックスからの入力)を送信する必要があります。&私はJSFで新しくなっています。JSFと送信パラメータ

は、管理対象Beanが「保存」メソッドを持っている(私はここvoidメソッドを、それを作ったが、Eclipseは、それは文字列を返すようにしたいようだ管理Bean

<h:form id="myForm"> 
    <h:inputText id="atribute1" value="#{myBean.atribute1}"></h:inputText> 
    <h:inputText id="atribute2" value="#{myBean.atribute2}"></h:inputText> 

    <h:commandButton id="btn" value="SendData" action="#{myBean.save}"> 
    <p:param name="param1" value="${atribute1}"/> 
     <p:param name="param2" value="${atribute2}"/> 
    </h:commandButton> 
</h:form> 

にリンクされて、私はフォームを持っていると言います?)

public void save() { 
FacesContext context = FacesContext.getCurrentInstance(); 
Map<String,String> params = context.getExternalContext().getRequestParameterMap(); 
String param1= params.get("param1"); 
String param2= params.get("param2"); 

System.out.println("param1:"+param1+" & param2:"+param2); 
} 

これは何もしていないようですが、値は表示されませんが、クラッシュしません。誰ですか?

答えて

1

saveメソッドで値を操作したいとします。

あなたは既にvallueがここで入力したと述べているvalue="#{myBean.atribute1}"を経由してBeanをバッキングにテキストボックスに入力するための値は、あなたがSaveメソッドでそれらをアクセスもできますページを送信すると、mybeanという名前の管理対象Beanのatribute1財産で利用できるようになりますリンクされています直接。

public void save() { 
    System.out.println("param1:"+this.attribute1+" & param2:"+this.attribute2); 
} 

両方のプロパティのゲッター/セッターがあることを確認し、コマンドボタンから子タグを削除してください。

関連する問題