在JSP中编写:
${a.b.c}
抛出“c”PropertyNotFound,但写入
<s:property value="#a.b.c"/>
工作正常。
如果有人能解释原因,我将不胜感激${a.b.c}
不起作用?
更新:
在同一个JSP中,访问另一个beanf
例如${a.f.d}
它发现d
正确。
我已经检查过该属性c
in ${a.b.c}
exists.
好问题。如果您没有为 b 中的属性 c 指定 getter setter,则会发生此错误Propertynotfound
for
${a.b.c}
But
<s:property value="#a.b.c"/>
不会导致错误。区别在于 ${} 适用于 getter setter,因为它是 OGNL,它使用 valuestack 中的 getter setter 进行读取。
只需在b类中编写getter setter即可。 ${a.b.c} 将开始工作。例如,如果 c 是 public String c 那么,
public String getC() {
return c;
}
public void setC(String c) {
this.c = c;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)