在网上看的一个小例子!照着写既然运行不起来
tomcat 设置
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
java 代码
import org.comet4j.core.CometContext;
import org.comet4j.core.CometEngine;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class HelloWorld implements ServletContextListener {
private static final String CHANNEL ="hello";
public void contextInitialized(ServletContextEvent arg0){
CometContext cc =CometContext.getInstance();
cc.registChannel(CHANNEL);//注册应用的channel
Thread helloAppModule =new Thread(new HelloAppModule(),"Sender App Module");
helloAppModule.setDaemon(true);
helloAppModule.start();
}
class HelloAppModule implements Runnable{
public void run(){
while(true){
try{
Thread.sleep(1000);
}catch(Exception ex){
ex.printStackTrace();
}
CometEngine engine =CometContext.getInstance().getEngine();
engine.sendToAll(CHANNEL,Runtime.getRuntime().freeMemory()/1024);
}
}
}
web.xm配置
<listener>
<description>Comet4Jlistener</description>
<listener-class>org.comet4j.core.CometAppListener</listener-class>
</listener>
<servlet>
<description>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>/webpage/main/conn</url-pattern>
</servlet-mapping>
<listener>
<description>HelloWorld</description>
<listener-class>weixin.listener.HelloWorld</listener-class>
</listener>
js
<script type="text/javascript" src="plug-in/comet/comet4j.js"></script>
<script typescripttype="text/javascript">
$(function () {
function init(){
var kbDom = document.getElementById('kb');
JS.Engine.on({
hello :function(kb){//侦听一个channel
kbkbDom.innerHTML = kb;
alert(kb)
}
});
JS.Engine.start('conn');
}
})
</script>
客户端页面位置
webapp-->main->home.jsp
comet4j-tomcat7.jar 有导入 求助啊