Jsp 使用struts2更新值表单不起作用

Jsp 使用struts2更新值表单不起作用,jsp,struts2,ognl,Jsp,Struts2,Ognl,当按下更新按钮时,我试图将值从JSP页面传递到我的操作类 在本例中,我使用getter和setter在action类中创建了一个名为value的字符串列表 我的问题是,当试图修改JSP中的输入字段,然后按Update时,value在action类中保持不变(初始值不变) 例如: v[0] = "zero" v[1] = "something" v[2] = "true" 在我的表单中,我更改了v[2]在中输入文本“false”,然后按了更新;在execute()中打印时,v[2]保持为“tru

当按下更新按钮时,我试图将值从JSP页面传递到我的操作类

在本例中,我使用getter和setter在action类中创建了一个名为
value
的字符串列表

我的问题是,当试图修改JSP中的输入字段,然后按Update时,
value
在action类中保持不变(初始值不变)

例如:

v[0] = "zero"
v[1] = "something"
v[2] = "true"
在我的表单中,我更改了
v[2]
中输入文本“false”
,然后按了更新;在
execute()
中打印时,
v[2]
保持
为“true”

更新:我重写了jsp代码,使用struts2标记而不是scriptlet


财产
价值

表单字段由其
名称
属性绑定。它应该是一个正确的OGNL表达式,由
params
拦截器根据
valueStack
计算。填充参数时,操作bean应该位于
valueStack
top
上,如果您的操作不是模型驱动的,那么如果操作bean具有相应的属性访问器,则将填充该操作bean

问题出在您使用Scriptlet时的代码中(非常不鼓励使用Scriptlet,请参阅),并且代码中存在错误
name=“


查看您最近在问题中更新的代码

<s:textfield name="value[%{#rowStatus.index}]" value="%{propertiesForm.getValue(#rowStatus.index)}"/>

是否有
设置值(字符串[]v)
在操作中?您是否看到日志显示,当您按下
更新
按钮时,
更新
操作实际上被调用,如果是,您是否可以显示您的
更新
操作。@fustaki是的,我在操作类中为value设置了setter和getter,发布列表定义及其getter和setter。但是,您带有struts2标记和html的脚本让人毛骨悚然:|看看
标记
<s:textfield name="propertiesForm.value[%{#rowStatus.index}]" />