comet4j 消息推送
项目需求我们系统集成大量的接口供其他系统调用,为了实现当接口出现错误时能够及时提示管理人员调整。具体:现有 A, B, C, D四台计算机, A和B为服务器,C和D为普通客户机,我们系统在B上,A调用B上的接口,C和D正登陆B部署的web项目。当A调用B出现异常,我们将异常信息已经传输的数据在C和D的界面弹出。
方案1:用前台定时器对系统日志表刷新,
方案2:使用消息推送
我这里先写个 dome
1.准备工作
下载所需工具 链接:http://pan.baidu.com/s/1sk9H5WL 密码:bibg
2.配置 tomcat,打开server.xml
修改前
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
修改后
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443"/>
在eclipse上开发修改server.xml
3.将jar放入项目中
4.将js引入到要显示的页面里边
5.配置web.xml
(1)
<listener> <description>Comet4J容器侦听</description> <listener-class>org.comet4j.core.CometAppListener</listener-class> </listener> <servlet> <description>Comet连接[默认:org.comet4j.core.CometServlet]</description> <display-name>CometServlet</display-name> <servlet-name>CometServlet</servlet-name> <servlet-class>org.comet4j.core.CometServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>CometServlet</servlet-name> <url-pattern>/conn</url-pattern> </servlet-mapping>
(2) 初始化
<listener> <description>HelloWorld</description> <listener-class>org.pbw.web.test.HelloWorld</listener-class> </listener>
6 初始化实现类
public class HelloWorld implements ServletContextListener { private static final String CHANNEL = "hello"; public void contextInitialized(ServletContextEvent arg0) { CometContext cc = CometContext.getInstance(); cc.registChannel(CHANNEL); } public void contextDestroyed(ServletContextEvent arg0) { } }
7.jsp页面实现
<script type="text/javascript" language="javascript"> $(document).ready(function() { var hello = document.getElementById('hello'); JS.Engine.on('hello', function(text){ hello.innerHTML=text; }); JS.Engine.start('conn'); }); </script>
<div id="hello"></div>
8.调用接口时向客户端推送消息
http://127.0.0.1:8080/org.outdoors.core/ws/co?wsdl
接口实现类
@Service public class UIServiceImpl implements IUserService { @Override public String findUserList(String str) { try { if("1".equals(str)){ Comet4jUtil.sendMsgToClient("调用接口成功!"); } } catch (Exception e) { } return "1"; } }
public class Comet4jUtil { private static final String CHANNEL = "hello"; public static boolean sendMsgToClient(String str){ CometEngine engine = CometContext.getInstance().getEngine(); engine.sendToAll(CHANNEL , "你很讨厌!"); return true; } }
看看效果吧
这里什么都没有对吧调用下接口试试!
这里的数据就是从后台推到前台客户端(所有的客户端)的
相关推荐
【标题】"comet4j 自己写的消息推送 觉得实用" 提示我们讨论的是一个自定义实现的基于 Comet4j 的消息推送系统。Comet4j 是一个开源的 Java 框架,用于实现实时的、双向的、基于 HTTP 长连接的消息推送服务,它解决...
这个东西主要是用来开发时,对指定用户推送消息。
本示例介绍的是如何使用Comet4j这个第三方库来实现后台到前台的消息推送功能。Comet4j是一个专门用于JavaWeb应用的长连接通讯框架,它简化了基于Comet技术的实时通信实现。 首先,我们要理解Comet技术。Comet是一种...
Comet4j是一种基于Java的实时通信框架,它利用了HTTP长连接技术,实现了服务器向客户端的高效、低延迟的消息推送。在这个压缩包中,包含了Comet4j框架运行所必需的一些关键组件。 首先,`comet4j.js`是Comet4j的...
【标题】"comet4j 服务端向浏览器实时推送消息(支持指定用户推送)" 描述了一种技术方案,用于实现在服务器与浏览器之间进行实时通信,特别强调了能够针对性地向特定用户推送消息。这一功能在现代Web应用中非常重要,...
Comet4J是一个微型的即时推送框架,它分为服务端与客户端两部分,你只要将服务器端(JAR文件,目前仅支持Tomcat6、7)放入WEB-INF\lib,客户端(JavaScript文件)引入到页面,那么你的应用就具备了向客户端推送信息的...
标题"comet4j推送"指出我们关注的是Comet4j框架的推送功能。Comet4j的核心机制是利用HTTP长连接,保持客户端与服务器之间的连接不关闭,直到有新的数据需要发送或者连接超时。这种技术也被称为Comet技术,是实现...
comet4j消息推送所需的comet4j-tomcat7.jar包,comet4j-tomcat7.jar
Comet4j是一款基于Java平台的服务器推送技术框架,它主要设计用于实现实时的、双向的通信,使得服务器能够主动向客户端推送数据,而不仅仅局限于传统的HTTP请求响应模式。在Web开发中,这种技术可以极大地提升用户...
例如,可以创建一个新的Comet4j连接,监听服务器推送的消息,并根据需要触发相应的事件处理。 另一方面,`comet4j-tomcat7.jar`是专门为Tomcat 7服务器优化的Comet4j服务器端库。Tomcat是一个流行的开源Java ...
标题"comet4j推送Demo"表明这是一个使用Comet4j库创建的示例项目,目的是展示如何在Tomcat7环境下实现服务器推送功能。Tomcat7是一个广泛使用的开源Servlet容器,它支持Servlet 3.0规范,这为Comet4j提供了运行环境...
在Java中实现Comet4j推送,你需要做以下几步: 1. 引入Comet4j库:首先,确保你的项目已经正确地引入了Comet4j的依赖库。这通常通过Maven或Gradle等构建工具完成。 2. 创建Comet服务:在服务器端,你需要创建一个...
Java 使用 Comet4j 主动向客户端推送信息是一个常见的实时通信技术,主要应用于构建WebSocket或长轮询等实时交互的应用场景。Comet4j 是一个基于 HTTP 长连接的服务器端框架,它允许服务器端主动向客户端推送数据,...
Comet4j是一个Java库,专门用于实现Comet技术,这是一种服务器推送技术,允许服务器向客户端实时推送数据,而不仅仅是响应客户端的请求。在Web应用中,这种技术常用于实现聊天室、股票报价、在线游戏等实时交互功能...
总的来说,Comet4j是一个强大的实时通信框架,它简化了Web应用中的消息推送实现,使得开发者可以专注于业务逻辑,而无需过多关注底层通信细节。通过学习和使用Comet4j,开发者可以为用户提供更加实时、流畅的交互...
在这个场景中,"comet4j-tomcat7后台信息推送jar包"是一个专门为Tomcat7服务器设计的实现Comet技术的组件。 Tomcat7是Apache软件基金会的Apache Tomcat服务器的一个版本,它是一个开源的、实现了Java Servlet和Java...
【标题】"comet4j完整包"是一个与Web服务端推送技术相关的软件包,它包含了一系列用于实现实时通信的组件和库。这个包旨在帮助开发者构建基于Comet技术的应用,以提供高效的、双向的服务器到客户端的数据传输。 ...
Comet4j是一种Java技术,用于实现在服务器端向客户端进行消息推送的功能。在Web开发中,传统的HTTP协议是基于请求-响应模型的,即客户端发起请求,服务器响应后连接关闭,这使得实时通信变得复杂。而Comet4j正是为了...
【Comet4j完整demo】是一个演示项目,它展示了如何使用Comet4j技术与Tomcat7集成,实现高效的服务器推送消息功能。Comet4j是一个开源的Java库,专门设计用于处理长连接(Long-Polling)通信,从而允许服务器主动向...
- 使用JavaScript调用Comet4J API,如`Comet4J.connect()`来建立连接,`Comet4J.send()`发送数据,以及注册事件监听器来处理服务器推送的消息。 4. 测试和调试: 启动Tomcat服务器,访问你的Web应用,确保客户端...