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