1.ServletDispatcher 被FilterDispatcher替代
ServletDispatcher被标记为deprecated.
新的Web.xml部分配置如下:
<filter> <filter-name>webwork</filter-name> <filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class> </filter>
<filter-mapping> <filter-name>webwork</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
<listener> <listener-class>com.opensymphony.webwork.lifecycle.LifecycleListener</listener-class> </listener>
<servlet> <servlet-name>JspSupportServlet</servlet-name> <servlet-class>com.opensymphony.webwork.views.JspSupportServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> |
其中filter代替了过去的ServletDispatcher,也增加了不少功能.
其中的LifecycleListener部分是为了使用XWork的IOC功能而设置的监听器,如果不使用,应该是可以去掉的.
其中的JspSupportServlet是为了支持在Freemarker和Velocity中进行的一些设置,如果去掉这个, 一些功能就不能在ftl文件里面使用了,例如webwork的tag支持.
如果想单独使用Freemarker的文件(不通过action),还可以在web.xml配置FreeMarkerServlet,类似
<servlet> <servlet-name>freemarker</servlet-name> <servlet-class>com.opensymphony.webwork.views.freemarker.FreemarkerServlet</servlet-class> <load-on-startup>10</load-on-startup> </servlet> <servlet-mapping> <servlet-name>freemarker</servlet-name> <url-pattern>*.ftl</url-pattern> </servlet-mapping>
|
注意:如果仅使用ftl文件作为action的结果页面,使用freemarker结果类型即可,不需要配置FreeMarkerServlet.
如果想使用DWR进行客户端校验,还需要配置:
<servlet> <servlet-name>dwr</servlet-name> <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet>
<servlet-mapping> <servlet-name>dwr</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping>
|
DWR还有一些参数配置,可以根据实际修改.
使用FilterDispatcher还有一些其他影响,具体可以参考Webwork的文档
- 不能使用jsp:include,ww:include了,可以使用action chaining 或者ww:action标签代替.
- Velocity中的JSP tag仿真不能用了,仅支持原生的Velocity tag了
当然如果你需要以上的功能,还是依然可以使用ServletDispatcher来配置的,不过这是不推荐的了.
2.默认使用alt syntax语法,当然可以配置
如果用新的方法的话字符串不需要加单引号了,不过要引用变量就要用%{名字}的方式了.
例如原来这样写的语句:
Message:<ww:text name="key"/>
<br><br>
Message:<ww:text name="’name’"/>
开启alt syntax后就要这样写:
Message:<ww:text name="%{key}"/>
<br><br>
Message:<ww:text name="name"/>
根据自己的习惯决定吧.我觉得alt syntax直观,不过有点麻烦,呵呵.
除经特别注明外,本文章版权归JScud Develop团队或其原作者所有.
转载请注明作者和来源. scud(飞云小侠) 欢迎访问 JScud Develop