`
丶折子戏
  • 浏览: 12292 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

[转] DWR web.xml配置

dwr 
阅读更多

 

例子:

 

<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>mconfig-yonghu</param-name>

           <param-value>/WEB-INF/dwr/dwr.xml</param-value>

       </init-param>

    </servlet>

    <servlet-mapping>

       <servlet-name>dwr-invoker</servlet-name>

       <url-pattern>/dwr/*</url-pattern>

    </servlet-mapping>

 

 

 

DWR: web.xml配置()2008-08-24 01:39一。 主要配置

要加入到你的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>         

<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>

二。 常用<init-param>参数列表

安全参数

allowGetForSafariButMakeForgeryEasier 开始版本:2.0 默认值:false 描述:设置成true使DWR工作在Safari 1.x , 会稍微降低安全性。

 

crossDomainSessionSecurity 开始版本:2.0

默认值:true

描述:设置成false使能够从其他域进行请求。注意,这样做会在安全性上有点冒险,参考一下这篇文章,在没有理解这个后果前不要设置成为false

 

debug 开始版本:1.0

默认值:false

描述:设置成true使DWR能够debug和进入测试页面

 

scriptSessionTimeout 开始版本:2.0

默认值:1800000(30分钟)

描述:script session 的超时设置

 

maxCallCount 开始版本:2.0rc2  1.1.4

默认值:20

描述:一次批量(batch)允许最大的调用数量。(帮助保护Dos攻击)

 

2 Ajax服务器加载时保护参数

 

pollAndCometEnabled 开始版本:2.0

默认值:false

描述:设置成true能增加服务器的加载能力,尽管DWR有保护服务器过载的机制。

maxWaitingThreads 开始版本:2.0

默认值:100

描述:最大等待线程数量。

 

preStreamWaitTime 开始版本:2.0

默认值:29000(单位:毫秒)

描述:对一个打开流前的反应,等待的最大时间

 

postStreamWaitTime 开始版本:2.0

默认值:1000(单位:毫秒)

 

描述:对一个打开流后的反应,等待的最大时间

其他参数

ignoreLastModified 开始版本:2.0

默认值:false

描述:默认值支持最后修改,这样就允许服务器端对客户端请求较少资源。设置为true就能屏蔽支持。

 

scriptCompressed 开始版本:1.1

默认值:false

描述:DWR能够执行简单的压缩,设置为true可以激活此功能。另外还有一个未公开的有关系的重要参数“compressionLevel”,此参数允许你配置压缩类型。查看这里得到更多详细资料。

 

sessionCookieName 开始版本:2.0

默认值:JSESSIONID

描述:DWR通过检查文档和提取当前session ID支持URL重写。一些servlet引擎使用非标准的cookie名。参数允许你改变默认值。 welcomeFiles 开始版本:2.0 默认值:index.html, index.htm, index.jsp 描述:类似于web.xml<welcome-file-list>标签

 

三。 日志配置

DWR工作在JDK1.3中不支持java.util.logging,但我们并不强迫任何人都去使用commons-logging或者log4j,所以在使用HttpServlet.log()方法时DWR将正常工作,如果没有日志类的话。然而如果DWR可以使用,那么它将使用日志。 Commoms-Logging 由于大多数servlet容器都使用它,几乎每个人都将使用commons-logging。所以如果你的webapp不明确使用commons-logging,它将被默认设为可以使用。 在这些日志将被一些配置文件所约束,比如java.util.logging或者log4j,可以去查看他们各自的文档获得详情。 HttpServlet.log() 如果你正在使用HttpServlet.log() 以下的代码用来控制DWR日志<init-param>

    <param-name>logLevel</param-name>

    <param-value>DEBUG</param-value>

</init-param>

值可以是:FATALERRORWARN(默认)INFODEBUG 四。 多个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和权限。 就像如下例子去使用

<init-param>

    <param-name>config*****</param-name>

    <param-value>WEB-INF/dwr.xml</param-value>

    <description>What config file do we use?</description>

</init-param>

用一个字符串”config” 作为开始,设置param-name,每个param-name必须不同。                       

<servlet>

    <servlet-name>dwr-user-invoker</servlet-name>

    <servlet-class>org.directwebremoting. 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..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>

 

 

DWR: web.xml配置()

插件配置、测试模式配置五。

 插件配置 大多数DWR的功能是可以作为插件的,所以就通过替换默认的类可以改变DWR的功能。 你可以通过包含<init-param>去覆盖默认的实现。 举个例子:

   

<init-param>

       <param-name>

           org.directwebremoting.extend.ServerLoadMonitor

       </param-name>

    <param-value>com.example.MyCustomServerLoadMonitor</param-value>

    </init-param>

 

    没有规定我们越过主要的版本丢弃这些接口,但是我们将尝试提供简单的升级路径。 DWR2.0插件 

    org.directwebremoting.Container 

    org.directwebremoting.WebContextFactory.WebContextBuilder 

    org.directwebremoting.ServerContextFactory.ServerContextBuilder 

    org.directwebremoting.servlet.UrlProcessor 

    org.directwebremoting.extend.AccessControl 

    org.directwebremoting.extend.AjaxFilterManager 

    org.directwebremoting.extend.ConverterManager 

    org.directwebremoting.extend.CreatorManager 

    org.directwebremoting.extend.DebugPageGenerator 

    org.directwebremoting.extend.HtmlCallMarshaller 

    org.directwebremoting.extend.HtmlPollHandler 

    org.directwebremoting.extend.PageNormalizer 

    org.directwebremoting.extend.PlainCallMarshaller 

    org.directwebremoting.extend.PlainPollHandler 

    org.directwebremoting.extend.Remoter 

    org.directwebremoting.extend.ScriptSessionManager 

    org.directwebremoting.extend.ServerLoadMonitor

    默认的实现大多数在org.directwebremoting.impl包,细节是在ContainerUtil.setupDefaults()指定的。

    DWR1.1插件  uk.ltd.getahead.dwr.AccessControl 

    uk.ltd.getahead.dwr.Configuration 

    uk.ltd.getahead.dwr.ConverterManager 

    uk.ltd.getahead.dwr.CreatorManager  uk.ltd.getahead.dwr.Processor 

    uk.ltd.getahead.dwr.ExecutionContext

    默认的实现大多数在uk.ltd.getahead.dwr.impl 六。测试模式配置 通过添加如下参数,设置debug测试模式

    <init-param>

       <param-name>debug</param-name>

       <param-value>true</param-value>

    </init-param>

    debug模式里,DWR将为每个allow的类(请看下面的dwr.xml配置章节)生成测试页面。这些能变得非常有用帮助了解DWR能做什么和如何工作。这个模式也能警告你以防止javascript的保留字,或者重载问题。

    然而这个模式不应该被用在现场部署,因为他能给黑客或者攻击者许多关于服务器的详细信息。

 

DWR: dwr.xml配置()纵览、<init>

    标签2008-08-24 02:50纵览

 

    dwr.xml是你用来配置DWR的文件,默认是将其放入WEB-INF文件夹。 创建一个dwr.xml文件 dwr.xml有如下的结构:

 

 

    <?xml version="1.0" encoding="UTF-8"?>

 

    <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN""http://www.getahead.ltd.uk/dwr/dwr20.dtd">

 

    <dwr><!-- 仅当需要扩展DWR时才需要 -->

 

       <init>

 

           <creator id="..." class="..." />

 

           <converter id="..." class="..." />

 

       </init><!-- 没有它DWR什么也做不了 -->

 

       <allow>

 

           <create creator="..." javascript="..." />

 

           <convert converter="..." match="..." />

 

       </allow><!-- 有必要告诉DWR方法签名 -->

 

       <signatures>...</signatures>

 

    </dwr>

 

 

. <init>标签

    这个初始化部分申明被用来创建远程beans而且这个类能被用来以某种过程转换。大多数例子你将不需要用它,如果你想去定义一个新的Creator或者Converter,就要在此被申明。

       init部分里有了定义只是告诉DWR这些扩展类的存在,给出了如何使用的信息。这时他们还没有被使用。这种方式很像Java中的import语句。多数类需要在使用前先import一下,但是只有import语句并不表明这个类已经被使用了。每一个creatorconverter都用id属性,以便后面使用。

 

分享到:
评论

相关推荐

    DWR,web.xml,dwr.xml,converted,created

    web.xml dwr.xml 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,。。 有几个术语有必要理解,参数叫做converted,远程Bean叫做created.如果远程Bean A有个方法A.blah(B),那么你需要为A建立一个created,为B建立...

    DWR2.jar + DWR.xml + DWR2.0.dtd + Web.xml

    DWR2.0 相关配置文件 DWR2.jar + DWR.xml + DWR2.0.dtd + Web.xml

    DWR.xml配置文件说明书(含源码)

    DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...

    DWR 教程 中文API DWR.xml配置文件说明 DWR学习笔记

    包换7个文档,DWR学习笔记,中文API,DWR开发培训.ppt,WEB界面开发规范.doc,DWR.xml配置文件说明书.doc,DWRchinese.pdf,

    DWR.xml配置文件说明书.txt

    DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...

    dwr源码包,dwr.jar包下载

    2、 在web.xml中配置dwr,如下: &lt;!-- 配置DWR --&gt; &lt;servlet-name&gt;dwr-invoker org.directwebremoting.servlet.DwrServlet &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; &lt;param-value&gt;...

    dwr入门.txt

    dwr入门中web.xml配置 dwr.xml的位置和配置路径 ,附带测试小案例

    DWR中文文档.rar

    第2章.web.xml配置,含6小节;第3章.dwr.xml配置,含4小节;第4章.整合,含8小节;第5章.DWR中的JavaScript简介,含4小节;第6章.engine.js的功能,含3小节;第7章.util.js的功能,含13小节;第8章.DWR进阶,含5小节;第9章...

    DWR+SSH应用的相关配置代码说明

    导入dwr.jar包到lib下,在webroot/WEB-INF下创建dwr.xml文件以及导入dwr20.dtd文件, ------------1)DWR.xml &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct ...

    dwr3.0 配置文件

    dwr3.0的web.xml的配置文件,该文件是从dwr.jar文件中拷贝出来的

    dwr,jar和dwr-noncla.jar

    这是dwr的两个包,以及web.xml和dwr.xml的配置

    dwr+ssh项目

    DWR技术 1. dwr.jar (现将dwr的jar包,到到项目的lib 目录下) 2. dwr.xml (在WEB-INF 目录下创建 dwr.xml 文件) 3. web.xml的配置 4. 页面的引入

    Dwr的使用实例

    Dwr的使用实例 war文件 1. lib要导入包: dwr-2.0.M3.jar 2. web.xml配置: 3. WEB-INF下dwr.xml的配置 4. bean例子: 5. index.jsp的例子 详细内容请下载

    DWR简单配置说明---xml、java、jsp层层说明

    DWR简单配置说明---xml、java、jsp层层说明;通过jar包,web.xml,dwr.xml,jsp,java中举例子将dwr配置起来,主要是用来讲述dwr的配置。没有dwr的定义

    DWR3 对象传输与配置 源代码

    一个DWR3 调用对象的小例子,包括了web.xml的配置和dwr.xml的配置,完全按照官方标准dwr3配置,压缩文件中包括了应用的jar包 开发环境: eclipse + Tomcat

    DWR框架相关的一些资料

    这里有关于DWR入门和Web.xml配置,dwr.xml配置,一些整和资料,还有一些javascript的东西以及engine.js util.js等资料,和一些范例什么的

    一套完整的dwr ajax框架综合资料

    此资料包括了DWR.xml配置文件说明书.doc、DWR笔记.doc、DWR技术分析.doc、DWR开发培训.ppt、DWR学习.doc、WEB界面开发规范.doc等综合资料...

    DWR与界面开发

    DWR.xml配置文件说明书.doc DWR笔记.doc DWR技术分析.doc DWR开发培训.ppt DWR学习.doc WEB界面开发规范.doc 树控件.rar

    DWR中文文档.pdf

    web.xml配置 13 2.1 主要配置 13 2.2 常用参数列表 14 2.2.1 安全参数 14 2.2.2 Ajax服务器加载时保护参数 14 2.2.3 其他参数 15 2.3 日志配置 16 2.4 多个dwr.xml配置和J2EE角色定义 ...

    DWR与后台异步交互简单例子

    DWR与后台异步交互简单例子,两个JAR包,配置文件dwr.xml/web.xml

Global site tag (gtag.js) - Google Analytics