出于某种原因,我在Struts2中得到了这个:
Unexpected Exception caught setting 'submit' on 'class ru.user.action.IndexAction: Error setting expression 'submit' with value ['Submit', ]
'提交' 的唯一地方是下一段代码:
<s:form action="index" style="margin-top:8px">
<s:checkboxlist label="Select one or more answers" list="colors" name="yourColor" value="defaultColor" />
<s:submit value="Submit" name="submit" style="float:left"/>
</s:form>
这种行为的原因是什么?
答案 0 :(得分:0)
我将一行更改为:
<s:submit value="Submit" style="float:left"/>
并且没有错误。
答案 1 :(得分:0)
正如某人已经说过的,这是因为“提交”按钮已设置了“名称”属性,并且Action没有设置方法。因此,删除“名称”属性会阻止该消息,但在提交按钮上不需要它。
如果有人为了支持i18n而在struts 上使用属性'key',该属性会自动在html标记上生成属性'name'和'value',则可以将'name'设置为空因此struts会覆盖自动生成的属性。