Pushlet 客户端监听不到事件

cn00568347 2013-12-11 10:05:55
我在服务器端create一个事件
Event event = Event.createDataEvent("/linjiqin/hw");
event.setField("hw", "xxxxx");
return event;

在客户端jsp代码里监听
<script type="text/javascript">
//对pushlet的初始化,触发web.xml中的servlet。
PL._init();
//这里的监听的主题,必须在sources.properties中配置的对象中声明这个主题。
//sources.properties配置着事件源(EventSources),在服务器启动时会自动激活。
//可以通过服务器的启动记录查看得到。可以将这个文件放到WEB-INF目录下面或者classess目录下面都可以。
PL.joinListen('/linjiqin/hw');
function onData(event) {
alert(event.get("hw"));
}
</script>
有时会显示:[Subscriber] not alive for at least: 45000ms, leaving... alert不出东西。

当jap里只包含上述的js代码时,没有问题。但是当jsp里加了其他代码后,就监听不到信息,是不是ajax-pushlet-client.js和其他js会有冲突啊。。。求各位大神解答,急用啊!!!
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page language="java" import="com.xuanhu.lxj.bean.User"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<link rel="stylesheet" href="<%=request.getContextPath() %>/css/style.css" type="text/css" />
<link rel="stylesheet" href="<%=request.getContextPath() %>/css/home.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/css/menu-css.css">

<script type="text/javascript" src="<%=request.getContextPath() %>/ajax-pushlet-client.js" ></script>
<script type="text/javascript">
//对pushlet的初始化,触发web.xml中的servlet。
PL._init();
//这里的监听的主题,必须在sources.properties中配置的对象中声明这个主题。
//sources.properties配置着事件源(EventSources),在服务器启动时会自动激活。
//可以通过服务器的启动记录查看得到。可以将这个文件放到WEB-INF目录下面或者classess目录下面都可以。
PL.joinListen('/linjiqin/hw');
function onData(event) {
alert(event.get("hw"));
}
</script>
<!-- <script language="javascript" type="text/javascript" src="<%=request.getContextPath() %>/js/calendar/WdatePicker.js"></script> -->

<script type="text/javascript" src="<%=request.getContextPath() %>/js/jquery.min.js" ></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/menu_min.js"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/common.js"></script>

<script type="text/javascript" src="<%=request.getContextPath() %>/js/notice.js" charset="gbk"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/create-user.js" charset="gbk"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/home.js" charset="gbk"></script>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Home Page</title>
</head>
<%User user=(User)session.getAttribute("user");
if(user==null){
response.sendRedirect("login.jsp");
return;
}
String type=request.getParameter("type");
%>
<body>

<div id='container'>
<div id='logo'>
<div id='createuser'>Hello, <%=user.getName() %>  <a href="#" onclick="logout()"><%="<注销>"%></a>  <a href='#' onclick="createUser()">创建用户</a></div>
</div>
<div >
<div id="nav">
<ul id="main-menu" class="sm sm-blue">
<li >
<a href="#" onclick='showSideMenu("mytask")'>我的任务</a>
</li>
<li >
<a href="#">销售中心</a></li>
<li >
<a href="#">技术服务中心</a>
<ul class="sub-menu">
<li >
<a href="#" onclick='showSideMenu("kefu")'>
客户服务中心</a></li>
<li >
<a href="#" onclick=''>美工设计部</a></li>
<li>
<a href="#" onclick=''>
网络编辑部</a></li>
<li>
<a href="#" onclick=''>
运营文案部</a></li>
</ul>
</li>
<li >
<a href="#">人事部</a>
<ul class="sub-menu">
<li ><a href="#">员工生日</a></li>
<li ><a href="#">员工考勤</a></li>
<li ><a href="#">公司规章制</a></li>
<li ><a href="#" onclick="sendNotice(1)">通知、人事任免、奖惩</a></li>
<li ><a href="#">新员工沟通</a></li>
<li ><a href="#">员工入职、转正、离职</a></li>
<li ><a href="#">内部竞聘</a></li>
<li ><a href="#">公司组织架构</a></li>
</ul>
</li>
<li ><a href="#">培训部</a>
<ul class="sub-menu">
<li ><a href="#" onclick="sendNotice(2)">培训通知</a></li>
<li ><a href="#">培训课程需求申请</a></li>
<li ><a href="#">视频课程播放</a></li>
<li ><a href="#">公司讲师风采展示</a></li>
<li ><a href="#">公司课程资料库</a></li>
</ul>
</li>
<li ><a href="#">设置</a></li>
</ul>
</div>
</div>

<div id='maincontent'>

<div class="side-menu" id="kefu-sidebar">
<%if(type!=null && type.contains("kefu")){ %>
<ul>
<li><a href="#">在做任务</a>
</li>
<li><a href="#" class='active'>OA制作</a>
<ul>
<li><a href="#" onclick='showForm("NewAgreement")'>慧聪新签</a></li>
<li><a href="#" onclick='showForm("ThemeApply")'>主题页面促销申请表</a></li>
<li><a href="#" onclick='showForm("TBOA")'>同步OA</a></li>
<li><a href="#" onclick='showForm("ObjectOA")'>异议OA</a></li>
<li><a href="#" onclick='showForm("DailyFeedback")'>慧聪日常反馈</a></li>
<li><a href="#" onclick='showForm("eElbumApply")'>电子相册申请表</a></li>
<li><a href="#" onclick='showForm("CXTGeneralFeedback")'>诚信通普通反馈</a></li>
<li><a href="#" onclick='showForm("CXTArtFeedback")'>诚信通美化反馈</a></li>
<li><a href="#" onclick='showForm("BlankOA")'>空白OA</a></li>
</ul>
</li>
<li><a href="#">问题反馈</a></li>
</ul>
<%} else if(type!=null && type.equals("mytask")){%>
<ul>
<li><a href="#" onclick="showMyNotice()">我的通知</a></li>
<li><a href="#" onclick="showMyOA()">我的OA</a></li>
<li><a href="#" onclick="">OA查询</a>
<ul>
<li><a href="#" onclick='showOA(1,"all")'>所有OA</a></li>
<li><a href="#" onclick='showOA(1,"undone")'>未完成OA</a></li>
</ul>
</li>
</ul>
<%} %>
</div>
<div id="mainform">
<%if(type!=null && type.equals("kefu1")) {%>
<div class="OAMsg">OA创建成功!</div>
<%} %>
</div>
</div>

</div>
</body>
</html>
...全文
474 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
anyx-安安 2016-06-29
  • 打赏
  • 举报
回复
引用 4 楼 hyb1234hi 的回复:
PL._init(); 去掉即可
这个不攒不行啊
bugfix2 2015-11-13
  • 打赏
  • 举报
回复
引用 4 楼 hyb1234hi 的回复:
PL._init(); 去掉即可
神回复啊!果真好用
hyb1234hi 2015-04-29
  • 打赏
  • 举报
回复
PL._init(); 去掉即可
iceblue543204065 2014-08-22
  • 打赏
  • 举报
回复
我做的测试是只要这个页面还有<ifrmae>等框架会监听不到回调函数,服务端“not alive for at least: 45000ms”
狼烟的烟 2014-08-01
  • 打赏
  • 举报
回复
我今天有台机器突然也这样子了,真是奇怪啊。
binecy 2014-01-09
  • 打赏
  • 举报
回复
我也很奇怪啊,楼主解决了没有?

87,979

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧