代码之家  ›  专栏  ›  技术社区  ›  Jim Barrows

如何在Seam中使用相同的表单获取要编辑的子对象?

  •  0
  • Jim Barrows  · 技术社区  · 15 年前

    我有一门课,我们称之为任务。任务可以有子任务。子任务可以有子任务等。

    <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发生了变化,我得到了一个新的对话号码,但数据没有变化。

    1 回复  |  直到 15 年前
        1
  •  0
  •   shipmaster    15 年前

    我个人所做的是使用f:setPropertyActionListener在上下文中设置字段,如下所示

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

    然后重定向到pages.xml中的页面,该页面只使用selectedTask。如果可能的话,我会尽量避免使用页面参数。