您的位置:首页 > 编程语言 > Java开发

struts2无法调用类静态方法的解决办法

2012-06-20 19:21 260 查看
现在做网站中需要用到格式化输出Date对象,由于从数据库中取出来的是一个整体对象(例如Article对象),因此需要在显示页面来进行格式化处理。为了方便,写了一个DateFormateUtil类,里面提供了静态方法用于格式化Date对象(写的比较简单)。

public class DateFormatUtil {

private static SimpleDateFormat sdf = new SimpleDateFormat();

/**
* 按指定格式格式化输出Date对象
*
* @param pattern
*            格式化字符串
* @param date
*            要格式化的Date
* @return 格式化之后的字符串
*/
public static String format(String pattern, Date date) {

sdf.applyPattern(pattern);

return sdf.format(date);
}

/**
* 格式化Date的快捷方法
*
* @param date
*            要格式化的Date
* @return
*/
public static String date2String(Date date) {
return format("yyyy-MM-dd HH:mm:ss", date);
}

}
然后在页面上使用OGNL来调用这个类的静态方法。

<s:property value="@com.cms.util.DateFormatUtil@format('yy',postdate)" />

结果发现没有用.....

后来查看文档发现,如果要想在Struts2中使用OGNL调用静态方法,还得在struts.xml中开启一下。

<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>

重启tomcat,页面取值正常了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: