前段时间需要用到关于cometd,自己研究一些日子,苦无进展,在cometd官网都是用的jetty和maven 3.0以上版本,所以想在现有项目中使用,自己导入包,不使用maven,现在总结和大家分享一下,水平有限,还望大家原谅.
首先是使用到的所有jar包,
所有jar在jetty官网下载的demo中都可以找到,
前端的配置,因为使用的是jQuery,所以需要引入jQuery.js等一些js的包,一共需要引入"jquery-1.4.2-min.js","jquery.json-2.2.js","cometd.js","jquery.cometd.js",按照这个顺序引入.然后是前端js代码的编写,如下:
$(function() {
var cometd = $.cometd;
var config = {
contextPath: '${pageContext.request.contextPath}'
};
var x = location.protocol + "//" + location.host + "/cometd";
cometd.configure({
url: x,
logLevel: 'info'
});
cometd.handshake();
cometd.addListener('/meta/handshake', function(message) {
if(message.successful) {
cometd.subscribe('/test/*', function(message) {
//--------TODO 后台返回数据后的操作
}
});
} else {
//CometD handshake failed
}
});
});
前端代码写好后,需要在后台配置对应的channel与前端的subscribe方法监听的channel对应,这个可以参照cometd的官网的后台方式编写,代码累在附件中
最后就是前后台的联系,需要在web.xml中配置一下,如下代码:
综上,现在可以进行交互了,只是简单的实现一下,更多理论详细的内容还请参照cometd的官网.