Jboss迁移到Tomcat之手记(四)-DWR

时间:2022-10-14 00:01:30
JBoss上用的是DWR 2.0, lib里有dwr20.tld, dwr-2.0.1.jar,转到Tomcat 7后,总是在DWR调用处出现session error,无法成功。我初步猜测是不是DWR跟这么新的Tomcat不兼容,所以就升到DWR 3.0(dwr3.0.jar),结果DWR调用处出现CSRF Security Error,网上一查,才知道是跨域安全验证错误,在DWR文档网站(http://directwebremoting.org/dwr/documentation/server/configuration/servlet/index.html )上看到是两个参数配置作祟。在web.xml里的DWR servlet配置里加上初始化参数如下 <servlet>                    <servlet-name>dwr-invoker</servlet-name>          <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>           …. <init-param>              <param-name>crossDomainSessionSecurity</param-name>              <param-value>false</param-value>       </init-param>       <init-param>             <param-name>allowScriptTagRemoting</param-name>             <param-value>true</param-value>       </init-param> </servlet> 问题解决。回到 dwr2.0 也没问题。不过在升到 DWR3.0 时发现一个有趣的东西。就是 DWR 2.0 javascript 对象 DWREngine 不再被 3.0 支持,变成 dwr.engine 。而 dwr.engine 也被 DWR 2.0 支持。所以为了兼容考虑,以后还是用dwr.engine还调用吧。

本文出自 “守望者的技术日记和六..” 博客,请务必保留此出处http://dannyyuan.blog.51cto.com/212520/756006