java代码: |
<servlet> <servlet-name>dwr-invoker</servlet-name> <servlet- class>uk. ltd. getahead. dwr. DWRServlet</servlet- class> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr /*</url-pattern> </servlet-mapping> |
在此配置中可以添加servlet的配置参数,具体如下:
常用<init-param>参数列表
1 安全参数
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攻击)
maxWaitAfterWrite
开始版本:2.0.4 以后
默认值:500
描述:在没有传给浏览器的输出时,连接只能持有60秒,一旦出现浏览器输出,DWR会在连接关闭之前,停止一段时间(可配置的时间:maxWaitAfterWrite),强迫代理传输信息,如果是使用DWR2.0.4及以后的版本,没有配置需要。它有默认值,maxWaitAfterWrite参数默认为500毫秒。保持连接开放后第一个输出的情况下增加500毫秒刷新强行关闭连接。
2 Ajax服务器加载时保护参数
pollAndCometEnabled
开始版本:2.0
默认值:false
描述:设置成true能增加服务器的加载能力,尽管DWR有保护服务器过载的机制。
maxWaitingThreads
开始版本:2.0
默认值:100
描述:最大等待线程数量。
preStreamWaitTime
开始版本:2.0
默认值:29000(单位:毫秒)
描述:对一个打开流前的反应,等待的最大时间
postStreamWaitTime
开始版本:2.0
默认值:1000(单位:毫秒)
描述:对一个打开流后的反应,等待的最大时间
3 其他参数
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>标签
2、当我们想看DWR自动生成的测试页(Using debug/test mode)时,可在
java代码: |
servlet中加 <init-param> <param-name>debug</param-name> <param-value> true</param-value> </init-param> |
3、logging信息配置。
在无java.util.logging的jdk1.3下运行DWR,我们不希望强制用户加一个logging包,而是用HttpServlet.log ()方法来输出日志。如果classpath中包括logging jar包,DWR自动切换用logging输出日志。
如果用HttpServlet.log()方法,以下配置是有效的。
java代码: |
<init-param> <param-name>logLevel</param-name> <param-value>DEBUG</param-value> </init-param> |
我是喜欢用log4j输出日志,那么在log4j.properties下加,log4j.logger.uk.ltd.getahead.dwr = debug。这样可以看DWR的调试日志。
4、多dwr.xml文件的配置
可能有几种情况,我们一一列举。 一个servlet,多个dwr.xml配置文件;多个servlet,每个servlet对应一个或多个dwr.xml.
一个servlet,多个dwr.xml配置文件;
java代码: |
<servlet> <servlet-name>dwr-invoker</servlet-name> <servlet- class>uk. ltd. getahead. dwr. DWRServlet</servlet- class> <init-param> <param-name>config- 1</param-name> <param-value>WEB-INF/dwr1. xml</param-value> </init-param> <init-param> <param-name>config- 2</param-name> <param-value>WEB-INF/dwr2. xml</param-value> </init-param> </servlet> |
多个servlet,每个servlet对应一个或多个dwr.xml
java代码: |
<servlet> <servlet-name>dwr-invoker</servlet-name> <servlet- class>uk. ltd. getahead. dwr. DWRServlet</servlet- class> <!--用classes/dwr. xml--> </servlet> <servlet> <servlet-name>dwr-invoker1</servlet-name> <servlet- class>uk. ltd. getahead. dwr. DWRServlet</servlet- class> <init-param> <param-name>config-admin</param-name> <param-value>WEB-INF/dwr1. xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value> true</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr /*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>dwr-invoker1</servlet-name> <url-pattern>/dwr1/*</url-pattern> </servlet-mapping> |
5、dwr的几个扩展点(Plug-ins)
DWR对以下接口提供的默认的实现,用户可以继承DWR的默认实现类来达到我们想要的效果。但这至少需要我们读了DWR源码才能做这些工作(dwr源码很是清晰,有兴趣可以学习一下),以后可能补存这部分。
java代码: |
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 |
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。