我处于严重问题。基本上发生了什么,首先我在bean类中设置了一个arraylist对象。在调试时我检查了这个bean之后,这个bean现在包含了该列表的所有值。
这些bean值现在传递给JSP,它们用于某些UI表示逻辑。现在我提交这个JSP并调用一个新的action方法。
现在发生的事情是,当我在新的操作方法中检索该列表时......我得到了该列表,但该列表中的所有值都已更改为null!
有人可以向我解释问题是什么吗?
我无法将代码分享为机密。有人请告诉我应该做些什么!
答案 0 :(得分:0)
你需要使用' name' s的元素:struts的属性标记2.例如在对列表进行处理时,您需要创建名称为'属性如name="addresses[0].houseNo"
等。设置完成后,您将获得包含操作类中所有元素的完整列表。
This示例彻底解释了这一点。
答案 1 :(得分:0)
很抱歉迟到的回复,但答案很简单。基本上,我之前通过Spring配置在请求范围中指定了bean,这实际上阻止了值在下一个请求中持久存在。为了解决这个问题,我使用Struts 2隐藏字段中继了这些值,这完全解决了这个问题。