DWR2.0实现服务器推送技术:配置与整合示例

5星 · 超过95%的资源 需积分: 3 2 下载量 185 浏览量 更新于2024-07-24 收藏 111KB DOC 举报
"本篇文章主要介绍了如何利用DWR 2.0技术在Java Web应用中实现服务器端主动推送消息到客户端的功能。DWR(Direct Web Remoting)是一个强大的JavaScript框架,它允许服务器与浏览器之间的双向通信,而无需刷新页面。在这篇教程中,我们将着重关注如何在web.xml配置文件中集成DWR 2.0的推送功能,并结合响应式socket服务器来实现实时通信。 首先,确保在web.xml中正确引入DWR 2.0的配置,包括添加DWR的filter和相关的参数。如文中所示,你需要配置以下内容: 1. 定义`<filter>`标签以启用DWR的push功能: - `<filter-name>`属性设置为`dwr-script`或类似名称,用于后续引用。 - `<filter-class>`设置为`net.sf.dwr.servlet.DwrServletFilter`,这是DWR的主要过滤器。 2. 在`<filter-mapping>`标签中,将刚才定义的DWR filter映射到合适的url-pattern上,例如`/*`,以便处理所有请求。 3. 如果需要支持socket通信,可能还需要配置一个或多个socket服务器,比如使用Java的Socket编程或者第三方库如WebSocket。这一步需要在服务器端实现,通过监听特定端口并建立连接,当有新消息到来时主动推送给客户端。 4. 在客户端,你需要在JavaScript代码中使用DWR提供的API来注册接收推送事件的函数。这通常涉及到创建一个`Callback`对象,并将其注册到特定的DWR暴露接口上。 5. 服务器端,你需要编写Java方法来处理消息生成和发送,这些方法会被DWR自动暴露出来,供客户端调用。在消息准备好后,调用`invokeOnClient`方法,指定客户端的回调函数以及用户标识等信息。 6. 考虑性能优化和安全性,确保在配置中启用HTTPS以加密通信,同时管理好权限,仅允许授权的客户端访问推送服务。 使用DWR 2.0实现服务器端推送涉及了web应用部署配置、服务器端通信逻辑和客户端JavaScript编程的集成。掌握这些关键步骤后,你将能够构建出一个高效、实时的双向通信系统。"