-2

p:inputTextを介したパラメーターの送信をサポートしていないようですf:param。これは本当ですか?

はいの場合、どのようにパラメーターを渡すことができますか?

詳細
には、次の方法で生成されたinputTextフィールドのリストがあります。

<p:dataTable value="#{EncryptionBean.epList}" var="item">
  <p:column>
  ...
     <p:inputText value="#{item.APID}" valueChangeListener="#{EncryptionBean.listenerApid}">
         <f:param value="#{item.presetName}" name="whoLaunched"/>
     <p:inputText>
  </p:column>    
<(p:dataTable>

値変更リスナーをキャッチしたら、どのリスナーに属しているかを知る必要がありEncryptionBean.epListますinputText。私は通常これを行います:

ExternalContext ec; 
...
String value = (String)ec.getRequestParameterMap().get("whoLaunched");

...しかし、それは機能しませんinputTextcommandLinkたとえば、機能したため)。

item.presetName基本的に、 itemText 値 ( ) と一緒にリスナーに渡すにはどうすればよいitem.APIDですか? この 2 つをマップに保存する必要があります。

4

1 に答える 1

1

これはうまくいきました:

xhtml:

<p:inputText value="#{item.APID}">
    <p:ajax listener="#{EncryptionBean.listenerApid( item.presetName, item.APID )}"/>              
</p:inputText>

Java Bean:

public void listenerApid( String presetName, String typedAPID )
{       
    // Do something with values.
}

これらの値を渡すのがいかに簡単かは信じられないほど簡単ajax listenerですvalueChangeListener

于 2012-12-20T16:56:23.660 に答える