Spring Webflow - 删除列表中的一个项?

22 浏览
0 Comments

Spring Webflow - 删除列表中的一个项?

我在一个应用程序中使用Webflow 2.3.2,在其中一个步骤中,用户可以在绑定的模型对象中添加/删除列表项(修改后返回当前步骤)。例如,我的对象可能如下所示:\n

public class MyInfo implements Serializable {
    List myList = new ArrayList();
}

\n在Webflow中进行“添加”操作没有问题,因为我只需将新对象放在列表末尾,但是对于“删除”操作,我需要确定要删除的元素。我现在所做的是使用“currentEvent”预定义的EL对象,并获取我填充了要删除的记录的ID的原始事件“value”。我想知道是否有更优雅的方法来做这件事,因为这似乎是一个绕弯子的方法。有人能提出更好的方法吗?以下是我目前的做法的示例:\n我的JSP文件(注意“删除”按钮):\n


    
    
    

\n我的“flow.xml”文件:\n


    

\n我的事件处理程序:\n

public MyInfo deleteAccount(MyInfo myInfo, LocalAttributeMap currentEvent) {
    myInfo.getMyList().remove(Integer.valueOf((String)(currentEvent.asMap().get("_eventId_deleteItem"))).intValue());
    return myInfo;
}

0
0 Comments

Spring Webflow - 从列表中删除项目

有时候我们需要在Spring Webflow中的列表中删除项目。下面是一个关于如何在Spring Webflow中删除列表项的问题。让我们看一下问题的原因以及解决方法。

问题原因:

问题的原因是在点击提交按钮时,会提交所有隐藏的输入字段,除非您在标签的迭代中使用单独的

元素。

解决方法:

您可以在提交中使用参数来发送索引,然后通过以下方法来解决该问题:

在按钮中添加参数:


然后,在transition中处理删除操作:


    
    

最后,在flowService中删除项目:

public MyInfo deleteAccount(MyInfo myInfo, int indexDeleted) {
    myInfo.getMyList().remove(indexDeleted);
    return myInfo;
}

请注意,这里的`indexDeleted`是作为请求的参数传递的。通过``将其转换为长整型。

希望这篇文章能够帮助您解决在Spring Webflow中删除列表项的问题。如果您在开发Spring Webflow时遇到了问题,可以随时提问。

0
0 Comments

问题:如何使用单个`

0