加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

dwr配置篇web.xml

发布时间:2020-12-16 03:05:30 所属栏目:百科 来源:网络整理
导读:1、web.xml配置 java代码:? servlet ? servlet-namedwr-invoker/servlet-name ? servlet- class uk. ltd . getahead . dwr . DWRServlet /servlet- class /servlet servlet-mapping ? servlet-namedwr-invoker/servlet-name ? url-pattern/dwr /*/url-patter
1、web.xml配置
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>
这个参数DWR默认是false.如果选择true.我们可以通过urlhttp://localhost:port/app/dwr,你就可以看到你部署的每个DWR class。并且可以测试java代码的每个方法是否运行正常。为了安全考虑,在正式环境下你一定把这个参数设为false.
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>
有效的值是 FATAL,ERROR,WARN (the default),INFO and DEBUG

我是喜欢用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>
在这种配置下,param-name的值必须以config开头。param-name可以有>=0个。如果没有param-name,那么将会读取 WEB-INF/dwr.xml。如果有大于零个param-name,那么WEB-INF/dwr.xml文件将不会被读取。

多个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>
在这种情况下,我们可以根据J2EE security来控制权限,针对不同url,加不同的角色。
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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读