2009-09-02 28 views
0

我有一堂課,我們稱它爲Task。任務可以有子任務。子任務可以有子任務等 我有一個Seam JSF頁面,非常好地允許您編輯任何給定任務的所有字段。我也有一個子任務列表,我希望用戶能夠點擊該子任務,並開始編輯它。因此,這裏就是我有我實現了:如何在Seam中使用相同的表單獲取子對象的編輯?

<rich:dataList id="subTaskList" var="curSubTask" value="#{task.subTasks}"> 
    <s:link view="/party/edit.xhtml" propagation="nest"> 
     <h:outputText value="#{curSubTask.title}"/> 
     <f:param name="taskId" value="#{curSubTask.id}"/> 
    </s:link> 
</rich:dataList> 

當我點擊鏈接時,並在URL中的taskid的變化,我得到一個新的會話數,但在數據沒有變化。
有誰知道發生了什麼事?

+0

你能顯示你的page.xml和你的頁面的其餘部分嗎? – Damo 2009-09-03 10:54:35

+0

該頁面的其餘部分工作。它保存,取消,返回。添加其他東西等。沒有page.xml文件。 通過父母訪問此頁面也有效。 (網址:http://blah.com/party/edit.seam?taskId = 1)但是,如果孩子ID是2:(URL:http://blah.com/party/edit.seam?taskId=2 )不起作用,如果你點擊鏈接。如果你直接去那裏,它會在結束對話之後起作用。我已經試過它與巢,並加入了相同的結果。 這是談話和去相同的網頁,我相信,我只是不知道什麼。 – 2009-09-03 16:35:47

+0

那麼你如何在你的Bean中設置taskId的值?您是使用RequestParameter註釋還是從參數映射中檢索它? – Damo 2009-09-03 23:55:00

回答

0

我個人不使用f設定在上下文領域:setPropertyActionListener如下

<f:setPropertyActionListener value="#{curSubTask}" 
      target="#{selectedTask}" /> 

,然後重定向到該頁面在pages.xml,頁面只是使用selectedTask。如果可能,我儘量避免使用頁面參數。

相關問題