0
p:commandButtonが3つのp:inputTextフィールドの内容を持つJSF-2.0ダイアログを持っています。押された私はFを使用して試してみました:属性が、そのどちらか、私は「の値」内に配置するか、私は同じような何かをしようとした場合、私はヌル何を得るの正確なテキスト渡しますp:commandButtonが押されたときに、p:inputTextの値をBeanに渡す必要があります。
<h:form id="form">
<p:dataTable var="config" value="#{configBean.configList}" selection="#{configBean.selectedConfigs}">
<p:column selectionMode="multiple">
<f:facet name="header">
Delete?
</f:facet>
</p:column>
<p:column headerText="Name">
<h:outputText value="#{config.name}" />
</p:column>
<p:column headerText="Key">
<h:outputText value="#{config.key}" />
</p:column>
<p:column headerText="Value">
<h:outputText value="#{config.value}" />
</p:column>
</p:dataTable>
<p:commandButton value="Add Row"
oncomplete="addRowDialog.show()"/>
<p:commandButton value="Delete"
action="#{configBean.deleteSelectedConfigs}"/>
<p:dialog header="Add Row" widgetVar="addRowDialog" id="dialog"
width="250" height="300" showEffect="explode" hideEffect="explode">
<h:outputLabel for="name2" value="Name:"/>
<p:inputText id="name2" name="name2" required="true"/>
<p:commandButton value="Submit" actionListener="#{configBean.addNewConfigProperty}" onclick="addRowDialog.hide()" update="config">
<f:attribute name="name1" value="#{requestScope.name2}"/>
</p:commandButton>
</p:dialog>
</h:form>
が発見されたものの値を渡すことが可能ですこの方法でinputTextに?
これは私が試みた最初の方法でしたが、@ViewScopedが設定されていても属性を使用しようとしているので、ページのビュー間で値が失われてしまったため、ボタンをクリックするとすべてのデータが表示されますActionEvent – Ryland
@Ryland:別のビューに切り替えると、@ ViewScoped Beanが破棄され、値が失われます(これは予期した動作です)。値を保持したい場合は、@ SessionScopedを使用するか、データベースに格納されている値でViewScoped Beanを事前に埋める必要があります(これが実行している場合)。 –
このページには、「Add Row」コマンドボタンが付いたテーブルが表示されます。このボタンを押すと、情報を入力するp:ダイアログが表示されます。 p:ダイアログには "Submit"ボタンがあり、このボタンはBeanのバッキングメソッドを呼び出します。私が "value ="を実行し、個々のセッターにブレークポイントを設定すると、ヒットしますが、作成された各 "set"コールの間にデータが格納されません(ヌルに戻ります)。だから、私は属性を使用しようとしました。 – Ryland