WebWork2.2新特性:default.properties的变化

来源:互联网 发布:二次元图片下载软件 编辑:程序博客网 时间:2024/05/16 15:48
com/opensymphony/webwork/default.properties是webwork的重要文件,它对webwork的参数进行了配置,其中包含了webwork支持的所有配置,如果你想覆盖其中的配置,只需要建立一个webwork.properties放在你的项目中(一般放在源码目录下,发布时的位置是WEB-INF/classes下).

让我们来看看在webwork 2.2中这个文件发生了什么变化.


1.可以配置webwork.objectFactory

# if specified, the default object factory can be overridden here
#webwork.objectFactory = com.opensymphony.xwork.spring.SpringObjectFactory

这个ObjectFactory是一个功能很大的类,默认webwork使用的是 com.opensymphony.xwork.ObjectFactory,如果你想自己实现一个或者使用Spring的机制,可以配置这个属性.不过在没有更详细的文档出来之前,一定要小心使用.

SpringObjectFactory类中主要覆写了ObjectFactory的buildBean,并没有替换其他函数.

2.webwork.mapper.class
# extension for actions
webwork.mapper.class=com.opensymphony.webwork.dispatcher.mapper.DefaultActionMapper
webwork.action.extension=action

可以看到,增加了一行webwork.mapper.class.
DefaultActionMapper以及同目录下 RestfulActionMapper相当于以前的普通action url路径处理和CoolUriServletDispatcher映射方式处理,在webwork2.2中,如果想使用 CoolUriServletDispatcher的方式,在此处修改这个属性为RestfulActionMapper即可.

当然,你可以实现自己的ActionMapper,实现自己的想法,很多人都喜欢自己来处理url,那就自己写一个,不错的想法.

3.webwork.tag.altSyntax=true
altSyntax语法默认为打开了,参考前面的文章

4.webwork.i18n.reload
# when set to true, resource bundles will be reloaded on _every_ request.
# this is good during development, but should never be used in production
webwork.i18n.reload=false

如果设置为true,每次资源文件都会被重载,方便调试.发布后一定要记得改为false.

5.webwork.ui.templateSuffix
#sets the default template type. Either ftl, vm, or jsp
webwork.ui.templateSuffix=ftl

Tag模板的默认配置为freemarker的ftl了,以前是vm的.


6.webwork.dispatcher.parametersWorkaround

# workaround for some app servers that don't handle HttpServletRequest.getParameterMap()
# often used for WebLogic, Orion, and OC4J
webwork.dispatcher.parametersWorkaround = false

这个是为了处理一些web server的非常规的运作行为的,具体我就没试过了.