0

私は PrimeFaces 3.4 を使用しており、ページ上の dataTables に一連の .xhtml があります。ページ上のすべてのテーブルに 1 つの .xhtml を使用し、各種類の dataTable にその .xhtml を含めるときに ui:param を使用したいと思います。次のコードフラグメントがある場合:

<p:dataTable id="invoiceTable" emptyMessage="Pick a category from the drop down" 
    rows="10" var="invoice" value="#{editorUIBean.invoices}" scrollable="true"
    scrollHeight="180" editable="true" rowKey="#{invoice.seqId}"
    ...

したがって、請求書用の .xhtml、現金支払い用、売上税用などの .xhtml があり、各 .xhtml はバッキング Bean のプロパティと ID と変数名を除いて同一であるとします。上記のフラグメントを汎用化すると、WHAT_DO_I_REPLACE_THIS_WITH が機能するようになりますか?

<p:dataTable id="#{tableId}" emptyMessage="#{emptyMessage}" rows="10" var="#{rowId}"
    value="#{editorUIBean[dataProperty]}" scrollable="true" scrollHeight="180"
    editable="true" rowKey="#{WHAT_DO_I_REPLACE_THIS_WITH[rowKey]}"
    ...

したがって、このコードが editableTable.xhtml に含まれている場合、次のように使用します。

...
<ui:include src="editableTable.xhtml">
    <ui:param name="tableId" value="invoiceId"/>
    <ui:param name="emptyMessage" value="Pick a category from the drop down"/>
    <ui:param name="rowId" value="invoice"/>
    <ui:param name="dataProperty" value="invoices"/>
    <ui:param name="rowKey" value="seqId"/>
    ...
</ui:include>
....

したがって、基本的には、文字列「請求書」ではなく、rowId から変数請求書を取得するにはどうすればよいですか? JSF または PrimeFaces に eval() 関数はありますか? eval(rowId)[rowKey] のようなことはできますか?

私の質問をうまく表現できなかったことを許してください。私は JSF/Primefaces の初心者であり、用語を知りません。

前もって感謝します。

4

0 に答える 0