WebWork有两个主要配置文件:
web.xml 和 xwork.xml.在下面您可以找到WebWork必须和可选的配置文件的所有信息.
下面是您需要注意的所有文件.为了使开发更容易,其中的一些是可以动态重新加载的.
文件 | 可选 | 位置(相对于webapp) | 用途 |
---|---|---|---|
web.xml | 否 | /WEB-INF/ | Web部署描述,包括所有必须的WebWork组件 |
xwork.xml | 否 | /WEB-INF/classes/ | 主要配置,包括result/view类型,action影射,拦截器等 |
webwork.properties | 是 | /WEB-INF/classes/ | WebWork的属性配置 |
webwork-default.xml | 是 | /WEB-INF/lib/webwork-x.x.jar | xwork.xml中应该有的默认配置 |
velocity.properties | 是 | /WEB-INF/classes/ | velocity配置 |
静态内容
webwork需要的公共静态内容(JavaScript和CSS文件等)是由FilterDispatcher过滤器自动提供的.任何以"/webwork/"开始的请求被认为是静态内容,"/webwork/"后面的值会被影射到classpath下的WebWork公共包
默认情况下,系统会搜索以下包:
- com.opensymphony.webwork.static
- template
附加包可以通过设定packages参数(web.xml中FilterDispatcher过滤器的配置)来指定,这个参数是以逗号分割的列表.当指定附加的静态内容时,注意不要暴露敏感信息(如,数据库密码等).
web.xml
如果要用到WebWork的最新特性并且不需要考虑向后兼容问题,您只需要在web.xml中添加一个单独的过滤器.如果要用JSP的话,还需要一个添加标签库.但是如果是从2.1.7或更早的版本升级的Web应用程序,那么需要做更多的工作使程序能够正常运行.更多信息请查看web.xml 2.1.x兼容性.
过滤器配置如下:











注意:
url-pattern以前使用ServletDipatcher的时候,url-pattern是“*.action”,现在改成“/*”。因为Filter不但对action拦截,而且对其他类型的url也要拦截。指定action扩展名挪到了webwork.properties里面:
引用 webwork.action.extension = action
这样改为了支持Ajax一些特殊的URL,例如:/webwork/……是去请求服务器端dojo JS库,所以url-pattern一定要改,并且区分不同的请求,究竟是action还是/webwork/普通资源,FilterDispatcher会根据不同的情况执行不同的操作。
如果要用到JSP,标签库配置如下:








web.xml文档实例:






























