WebWork 2.2新特性(一):web.xml,alt syntax语法

WebWork 2.2新特性(一):web.xml,alt syntax语法


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

你可能感兴趣的:(WebWork 2.2新特性(一):web.xml,alt syntax语法)