2010-06-21 48 views
0

无法访问静态字段与OGNL与struts2的OGNL静态字段不能在Struts2

<s:checkbox name="operation" fieldValue="@[email protected]" /> 

上述转向HTML如下

<input type="checkbox" name="operation" value="@[email protected]" id="entry_operation"/> 

,而不是静态常量声明为

工作
com.xx.xxx.webapp.action.EntryAction.OPERATIONAL = "OPERATIONAL"; 

我已经正确设置<constant name="struts.ognl.allowStaticMethodAccess" value="true"/>

回答

3

您的问题与静态字段无关,但与基本的Struts2标记语法无关。代码在几个级别上是错误的。

首先,其属性,你应该使用,使Struts2的解释里面是什么的东西,以评估和渲染(fieldValue方法只对那些在你需要写一个固定的AD-罕见病例在您的html中的特殊值=“”属性)。

其次,如果你正在学习Struts2,你不应该使用静态字段,首先要理解基本的和典型的场景。第三,将该字符串用作只有两个值(true和false)的复选框的值是没有意义的。