`
jdluojing
  • 浏览: 16537 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

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

阅读更多

现在做网站中需要用到格式化输出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,页面取值正常了。

分享到:
评论

相关推荐

    Struts2 OGNL调用公共静态方法详细介绍

    一直以来都知道Struts2的OGNL支持在前台调用后台的静态方法,以前也用过,但用的比较少,今天自己重新开始了一个新的项目,在实现一个功能的时候用到了Struts2的在前台调用后台的静态方法,弄了半天没有出来结果,...

    Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化

    Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化,以后直接调用即可,无需修改任何源代码,改压缩文件包括 1、工具类; 2、源码(含jar包); 3、mysql数据库可执行文件; 4、struts2集成...

    Struts2属性文件详解

    该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true.如果需要关闭动态方法调用,则可设置该属性为false. struts.enable.SlashesInActionNames 该属性设置Struts 2是否允许在Action名中使用斜线,该属性的...

    Struts2入门教程(全新完整版)

    6.调用普通类的构造方法 25 7.集合对象初步 25 8.集合对象进阶 25 9.N语法top语法 26 10.获取Stack Context中的信息 26 11.总结$ # %的区别 27 12.总结OGNL[重点] 27 五、拦截器 28 1.概述strust2中的拦截器 28 2....

    深入浅出Struts2(附源码)

    本书是广受赞誉的Struts 2优秀教程,它全面而深入地阐述了Struts 2的各个特性,并指导开发人员如何根据遇到的问题对症下药,选择使用最合适的特性。作者处处从实战出发,在丰富的示例中直观地探讨了许多实用的技术,...

    Struts2中关于ValueStack的一些操作

    通过EL,我们可以存、取对象数据,而且还可以直接访问类的静态数据,调用静态方法。 3、 WebWork的ValueStack底层有第三方开源项目OGNL实现。所以EL也都遵循OGNL的规范。我们在开发中,几乎不需要知道OGNL的细节。...

    Struts课堂笔记.rar--struts2的struts.properties配置文件详解

    允许动态方法调用 struts.freemarker.manager.classname The org.apache.struts2.views.freemarker.FreemarkerManager implementation class org.apache.struts2.views.freemarker.FreemarkerManager接口名 ...

    Struts2\constant应用

    该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为false。 struts.enable.SlashesInActionNames 该属性设置Struts 2是否允许在Action名中使用斜线,...

    投票系统 struts2+JFreechart

    知识点:struts2,struts2模型驱动,Java反射,struts2插件使用,struts2与JFreeChart的集成开发,JFreeChart图表 1、开发环境:MyEclipse6.0, Struts 2.0.11, JFreeChart 1.0.9, JCommon 1.0.12,struts2-jfreechart...

    OGNL表达式struts2标签

    2、支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路)]@[方法名 | 值名],例如: @java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME; 3、支持赋值操作和表达式串联,...

    struts-2.3.15.1

    DefaultActionMapper类支持以"action:"、"redirect:"、"redirectAction:"作为导航或是重定向前缀,但是这些前缀后面同时可以跟OGNL表达式,由于struts2没有对这些前缀做过滤,导致利用OGNL表达式调用java静态方法...

    Struts2 + Spring2.5 + JFreeChart 实现的投票系统,2008年高考作文评价投票

    调用TouPiaoService.processTouPiao()静态方法把封在TouPiaoBean中的投票结果保存在应用的application中。 TouPiaoDatasets对象中的各个静态方法获取保存在application中的投票数据,并生成各个图表需要用到...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    书中介绍了如何利用Struts 2 来解决Web 应用开发中的常见问题,同时还深入浅出地探讨了许多能帮助程序员编写Struts 2 应用程序的技巧,如管理页面导航活动、输入验证、国际化和本地化、对Ajax 的支持,等等。...

    ognl表达式java使用案例详解(测试通过)

    2、支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[方法名 | 值名],例如:@java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME; 3、支持赋值操作和表达式串联...

    收集的常见的专业问题解决办法.rar

    2009-02-24 08:43 151144 33570 常见的专业问题解决办法\“在静态方法中不能调用非静态的方法和引用非静态的成员变量”如何理解?_Believe ┭┮ YourSelf.mht 2009-03-03 20:16 487640 194474 常见的专业问题解决...

    Java开发技术

    支持类静态的方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[方法名 | 值名],例如:@java.lang.String@format('foo %s', 'bar')或@tutorial.MyConstant@APP_NAME; 3. 支持赋值操作和表达式串联,如...

    struts.ppt

    2.支持类的静态方法调用和常量值的调用 3.操作集合对象 &lt;s:property value="#"&gt;&lt;/s:property&gt; 除了ValueStack不加#,直接取用,其他都要加#,ActionContent用#name或其他对象#相应对象.name ActionContent用#name?

Global site tag (gtag.js) - Google Analytics