在2。0之前,配制文件中的主类用:org.directwebremoting.servlet.DwrServlet
在后面主类用:uk.ltd.getahead.dwr.DWRServlet
------------------------------------------------------------------------------------------------------------
启动服务时,如果报如下错。
java.lang.IllegalArgumentException: DefaultContainer can't find a
classes
原因是:DWR2.0 加入了JDK5的注释(annotations).DwrServlet 初始化的时候会去检查注释的类,找不到就
抱错了。如果你不用annotations也可以忽略掉这个错误。不过看起来总是不爽。解决方案如下
在配制文件中加入下面的参数
<init-param>
<param-name>classes</param-name>
<param-value>java.lang.Object</param-value>
</init-param>
-------------------------------------------------------------------------------------------------------------
配制文件中几个可能用到的参数
scriptSessionTimeout
开始版本:2.0
默认值:1800000(30分钟)
描述:script session 的超时设置
maxCallCount
开始版本:2.0rc2 和 1.1.4
默认值:20
描述:一次批量(batch)允许最大的调用数量。(帮助保护Dos攻击)
Ajax服务器加载时保护参数
pollAndCometEnabled
开始版本:2.0
默认值:false
描述:设置成true能增加服务器的加载能力,尽管DWR 有保护服务器过载的机制。
maxWaitingThreads
开始版本:2.0
默认值:100
描述:最大等待线程数量。
preStreamWaitTime
开始版本:2.0
默认值:29000(单位:毫秒)
描述:对一个打开流前的反应,等待的最大时间
postStreamWaitTime
开始版本:2.0
默认值:1000(单位:毫秒)
描述:对一个打开流后的反应,等待的最大时间
welcomeFiles
开始版本:2.0
默认值:index.html, index.htm, index.jsp
描述:类似于web.xml的<welcome-file-list>标签
通过添加如下参数,设置debug测试模式
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
说明:
在debug模式里,DWR将为每个allow的类(请看下面的dwr.xml配置章节)生成测试页面。这些能变得非
常有用帮助了解DWR能做什么和如何工作。这个模式也能警告你以防止javascript 的保留字,或者重载问
题。
然而这个模式不应该被用在现场部署,因为他能给黑客或者攻击者许多关于服务器的详细信息。
-------------------------------------------------------------------------------------------
日志配制
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>
值可以是:FATAL,ERROR,WARN(默认),INFO,DEBUG
-------------------------------------------------------------------------------------------------------------------
一般工程中要写一个 dwr.xml文件,并且会被设为默认位置WEB-INF/dwr.xml。所以你不需要配置。
有3个原因说明你为何需要指定不同位置的dwr.xml文件:
1。 你想保持dwr.xml的文件请参照下面的例子
<param-value>WEB-INF/classes/com/yourco/dwr/dwr.xml</param-value>
2。 你可以有很多的远程方法类并且希望指定文件。在这个例子里将指定不同文件开始配置,不同
的param-name将重复多次 DWR将轮流读取它们。
3。 DWR能够使J2EE URL具有给与不同用户组不同权限的安全机制。通过起不同名字,URL和权
限。
关于3,下面给出一个例子:
<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.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 的功能是可以作为插件的,所以就通过替换默认的类可以改变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()指定的。
----------------------------------------------------------------------------------------------------
分享到:
相关推荐
dwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwr
dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;dwr包;
dwr 框架dwr 框架dwr 框架dwr 框架dwr 框架dwr 框架
整理的DWR一些资料--dwr实例 DWR文档 DWR实战 dwrPDF
DWR中文文档DWR中文文档DWR中文文档DWR中文文档DWR中文文档
dwr源码
dwr笔记 dwr自学资料 dwr笔记 dwr自学资料 dwr笔记 dwr自学资料
dwr中文文档dwr中文文档dwr中文文档dwr中文文档dwr中文文档dwr中文文档dwr中文文档
Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr入门操作手册Dwr...
DWR介绍DWR介绍DWR介绍DWR介绍DWR介绍DWR介绍
DWR配置文件详解 DWR配置 DWR配置文件
1、 导入dwr.jar包 2、 在web.xml中配置dwr,如下: <!-- 配置DWR --> <servlet-name>dwr-invoker org.directwebremoting.servlet.DwrServlet <init-param> <param-name>debug</param-name> ...
dwr2.0.6 dwr2.0.6dwr2.0.6dwr2.0.6dwr2.0.6dwr2.0.6dwr2.0.6dwr2.0.6
dwr填充表格示例dwr填充表格示例dwr填充表格示例
一些DWR的学习资料,包括DWR的使用笔记,DWR的界面开发,和DWR的中文文档等
dwr1.0版本 dwr2.0版本 dwr3.0版本的jar包
DWR中文版教程 DWR与Spring DWR与Struts DWR与Hibernate
dwr分页源码,dwr分页源码 dwr分页源码,dwr分页源码
Ajax 向我们袭来的时候,很多写代码的程序员看到了 Ajax 的发展...的目的只是通过本书,希望您能够了解一些 DWR 的基本知识、常用的用户界面组件、远程 方法调用等。并能够搭建 DWR 开发环境,实现 DWR 的快速开发。
DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.