spring4整合dwr3

早前看了孔浩老师的dwr与springmvc的整合视频,自己跟着动手把各种方式都练习了一下,遇到些问题,记录给自己以后用dwr的时候复制吧。望各位如有问题请观看,虽然对于DWR框架还不理解。

在使用dwr插件必先下载dwr的jar包及所依赖的jar包,此处只贴出代码不解释,还有就是DWR 3.0.M1的包好像有人说maven下载的有问题,所以请更新到最新版本。pom.xml如下:

    <dependency> 
      <groupId>org.springframework</groupId>
      <artifactId>spring-**(模块名)</artifactId>
      <version>4.1.6.RELEASE</version>
    </dependency>
    <dependency>    
      <groupId>org.directwebremoting</groupId>    
      <artifactId>dwr</artifactId>    
      <version>3.0.1-RELEASE</version>
     </dependency>

在web.xml中的配置如下(不由Spring的Dispatcher来处理dwr的请求):

     <servlet><servlet-name>dwr</servlet-name>    
       <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>    
       <init-param>        
         <param-name>debug</param-name>        
         <param-value>true</param-value>    
       </init-param>    
       <init-param>        
          <param-name>config</param-name>        
          <!-- 如果有多个用","分开 -->        
          <param-value>/WEB-INF/dwr.xml</param-value>    
      </init-param>
     </servlet>
     <servlet-mapping>
         <servlet-name>dwr</servlet-name>
         <url-pattern>/dwr/*</url-pattern>
     </servlet-mapping>

而dwr.xml文件如下:

    <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">
    <dwr>    
      <allow>        
        <!-- 从Spring中获取Java对象 -->        
        <create javascript="dwrService" creator="spring">            
        <!-- dwrService为在bean中id,由于spring开启了annotation所以直接写名字就好了,没有用annotation请写下类路径-->            
          <param name="beanName" value="dwrService"/>     
        </create>    
      </allow>
    </dwr>

总结:
在很多spring3整合dwr3的过程中都使用了在applicationContext.xml 的方式中引入dwr命名空间(namespace)的方法,但亲身试验过,在spring4中这样的方式不行。(或许是我使用的方式不对,总之百度谷歌了一下,一一尝试过,都没有成功)。故采用dwr2时中使用的方法,写一个dwr.xml文件,托管到spring中,最终dwr就托管到了spring中,可以方便快捷的使用了。我猜想之所以用命名空间没有可能是许多人说dwr是具有侵入式的,所以使用的人开始减少,和spring兼容就没以前那么激情咯-!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容