2016-08-17 65 views
1

解決方案 長話短說,"not empty #{pastTxModel.currentTx.xml}"應該是"#{not empty pastTxModel.currentTx.xml}"。是啊,我知道...f:setPropertyActionListener未設置p:datatable中的屬性

UPDATE 的問題是在這裏:

<p:inputTextarea id="test" value="#{pastTxModel.currentTx.xml}" rendered="not empty #{pastTxModel.currentTx.xml}"></p:inputTextarea> 

回答

0

長的故事,但解決的辦法是 -

第1部分 -

<h:form id="alltxform"> 
    <p:dataTable id="tablealltx" var="transaction" value="#{transactionListModel.txList}">  
     <p:column> 
      <p:commandButton update=":alltxform:xmlDetail" action="#{transactionListModel.setSelectedTx(transaction)}"> 
      </p:commandButton> 
     </p:column> 
    </p:dataTable> 

    <p:dialog header="Detail" widgetVar="dialog"> 
     <p:outputPanel id="xmlDetail"> 
      <p:inputTextarea id="test" value="#{pastTxModel.currentTx.xml}" rendered="not empty #{pastTxModel.currentTx.xml}"></p:inputTextarea> 
     </p:outputPanel> 
    </p:dialog> 
</h:form> 

然後更改 -

<p:inputTextarea id="test" value="#{pastTxModel.currentTx.xml}" rendered="not empty #{pastTxModel.currentTx.xml}"></p:inputTextarea> 

要 -

<p:inputTextarea id="test" value="#{pastTxModel.currentTx.xml}" rendered="#{not empty pastTxModel.currentTx.xml}"></p:inputTextarea> 
+0

我用行動= 「#{pastTxModel.selectedTx(交易)}」,但selectedTx保持空 – Tim

+0

訪問它通過bean - controllerBean.pastTxMode l.selectedTx(辦理離子) - 是否交易肯定有價值? – farrellmr

+0

對不起你的bean是transactionListModel - 所以更改爲transactionListModel.setSelectedTx(transaction) – farrellmr

0

您需要點擊按鈕後更新了整個對話。

<p:commandButton update=":alltxform:Detail" oncomplete="PF('dialog').show()"> 
       <f:setPropertyActionListener value="#{transaction}" 
        target="#{transactionListModel.selectedTx}" /> 
     </p:commandButton> 
+0

這並沒有改變任何東西 – Tim