我有一个Struts页面,它在我的JSP中的表单中显示以下内容:
<html:select property="value">
<html:options collection="valueNext"/>
</html:select>
在Java表单中,getter都存在:
public AValue getValue() {
return value;
}
public List<AValue> getValueNext() {
return value.next();
}
然而,当我尝试显示页面时,我总是会收到一条错误消息,告诉我以下内容:
无法在名称valueNext
下找到bean
我不明白为什么Struts会找到value
而不是valueNext
(是的,我删除了html:options
行,并且它有效。)
我对Struts很新,但在我看来两者都在同一范围内。有人可以启发我吗?
答案 0 :(得分:1)
我终于找到了它(感谢另一位撰稿人的帮助)。
我没有使用正确的标签:html:options
将在您调用另一个bean时使用。
要调用表单的属性,我应该使用html:optionsCollection
。以下JSP工作得很好:
<html:select property="value">
<html:optionsCollection property="valueNext"/>
</html:select>
(Struts文档:html:options和html:optionsCollection)