`
shyf12054213
  • 浏览: 34291 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

dwr学习笔记之配置篇

    博客分类:
  • dwr
阅读更多

要加入到你的web.xml最少的代码就是简单地去申明DWR servlet,没有它DWR就不起作用。
      <servlet>
           <servlet-name>dwr-invoker</servlet-name>
           <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
      </servlet>
      <servlet-mapping>
           <servlet-name>dwr-invoker</servlet-name>
           <url-pattern>/dwr/*</url-pattern>
      </servlet-mapping>
在DWR2.x里,DwrServlets是类org.directwebremoting.servlet.DwrServlet ,尽管
uk.ltd.getahead.dwr.DWRServlet仍然可以用。在DWR 1.x你不得不使用后者。
有些额外的servlet参数,在有些地方很重要。尤其debug参数
这个扩展DWR的标准结构是使用<init-params>。放在<servlet>内,就像如下使用
<servlet>
   <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>true</param-value>
    </init-param>
</servlet>

另外,启动服务时,如果报如下错。
java.lang.IllegalArgumentException: DefaultContainer can't find a
classes
是DWR2.0 加入了JDK5的注释(annotations).DwrServlet初始化的时候会去检查注释的类,找不到就
抱错了。如果你不用annotations也可以忽略掉这个错误。不过看起来总是不爽。解决方案如下
<servlet>
    <servlet-name>dwr-invoker</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>classes</param-name>
        <param-value>java.lang.Object</param-value>
   </init-param>
</servlet>
  多个dwr.xml配置和J2EE角色定义
一般来说只需要一个dwr.xml文件,并且会被设为默认位置WEB-INF/dwr.xml。所以你不需要配置。
有3个原因说明你为何需要指定不同位置的dwr.xml文件:
    你想保持dwr.xml的文件请参照下面的例子
 <param-value>WEB-INF/classes/com/yourco/dwr/dwr.xml</param-value>
    你可以有很多的远程方法类并且希望指定文件。在这个例子里将指定不同文件开始配置,不同
     的param-name将重复多次DWR将轮流读取它们。
     DWR能够使J2EE URL具有给与不同用户组不同权限的安全机制。通过起不同名字,URL和权
     限。
就像如下例子去使用
 用一个字符串”config” 作为开始,设置param-name,每个param-name必须不同。
<servlet>
    <servlet-name>dwr-user-invoker</servlet-name>
    <servlet-class>
        org.directwebremoting.servlet.DwrServlet
    </servlet-class>
    <init-param>
        <param-name>config-user</param-name>
        <param-value>WEB-INF/dwr-user.xml</param-value>
    </init-param>
</servlet>
<servlet>
    <servlet-name>dwr-admin-invoker</servlet-name>
    <servlet-class>
        org.directwebremoting.servlet.DwrServlet
    </servlet-class>
    <init-param>
        <param-name>config-admin</param-name>
        <param-value>WEB-INF/dwr-admin.xml</param-value>
    </init-param>
</servlet>

<servlet-mapping>
    <servlet-name>dwr-admin-invoker</servlet-name>
    <url-pattern>/dwradmin/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>dwr-user-invoker</servlet-name>
    <url-pattern>/dwruser/*</url-pattern>
</servlet-mapping>

 <security-constraint>
    <display-name>dwr-admin</display-name>
    <web-resource-collection>
    <web-resource-name>dwr-admin-collection</web-resource-name>
        <url-pattern>/dwradmin/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>admin</role-name>
    </auth-constraint>
</security-constraint>
<security-constraint>
    <display-name>dwr-user</display-name>
    <web-resource-collection>
        <web-resource-name>dwr-user-collection</web-resource-name>
        <url-pattern>/dwruser/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>user</role-name>
    </auth-constraint>
</security-constraint>

分享到:
评论

相关推荐

    DWR学习笔记-HelloWorld篇

    【标题】:“DWR学习笔记-HelloWorld篇” 在IT领域,DWR(Direct Web Remoting)是一个开源的Java框架,它允许JavaScript在浏览器端直接调用服务器端的Java方法,实现了网页与服务器的实时交互,类似于Ajax技术,但...

    dwr 读书笔记

    这篇读书笔记将深入探讨DWR的核心概念、工作原理以及实际应用。 首先,我们要理解DWR的基本理念。DWR的核心是提供一种简单的方式,使得Web开发者可以在浏览器端直接调用服务器端的Java方法,仿佛这些方法就是本地...

    dwr笔记整理(三)

    本篇笔记将深入探讨DWR的核心概念、功能以及如何在实际项目中应用。我们将通过分析DWR的源码,了解其实现机制,并借助提供的工具进行实战演练。 1. **DWR概述** DWR的核心理念是提供一种安全、高效的方法,使得...

    dwr案例+文档+jar

    2. **DWR配置**:学习在web.xml和dwr.xml中设置DWR的相关配置,使DWR能够正常工作。 3. **客户端API**:掌握JavaScript中的DWR API,如何创建和调用远程对象,以及处理异步回调。 4. **服务器端API**:了解如何在...

    ajax配置模版

    本篇笔记主要介绍了一个具体的AJAX配置示例,它涉及了Spring框架、Direct Web Remoting (DWR) 和Hibernate等技术的应用。下面将详细解析这些配置代码的关键部分及其作用。 #### 二、web.xml配置分析 **1. Spring上...

Global site tag (gtag.js) - Google Analytics