`
cuisuqiang
  • 浏览: 3963193 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
3feb66c0-2fb6-35ff-968a-5f5ec10ada43
Java研发技术指南
浏览量:3672499
社区版块
存档分类
最新评论

pushlet 之 Pushlet使用手把手实例

阅读更多

Pushlet(一种comet 架构的实现)是基于Servlet 机制,数据从server端的Java 对象直接推送(push)到客户端浏览器的(动态)HTML 页面,而无需任何Java applet 或者插件的帮助。

  • 在MyEclipse中创建工程。附件包含了从官方下载的Pushlet包已经本次的源码包,直接导入到开发工具即可。
  • 在创建的工程中增加pushlet.jar,log4j.jar。拷贝pushlet.properties,sources.properties到WEB-INF下。拷贝ajax-pushlet-client.js到WebRoot下。
  • 配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<!-- $Id: web.xml,v 1.7 2005/02/21 17:21:49 justb Exp $ -->
<web-app>
	<!-- Define the pushlet servlet -->
	<servlet>
		<servlet-name>pushlet</servlet-name>
		<servlet-class>nl.justobjects.pushlet.servlet.Pushlet</servlet-class>
		<load-on-startup>3</load-on-startup>
	</servlet>
	<!-- Define the Servlet Mappings. -->
	<!-- The pushlet -->
	<servlet-mapping>
		<servlet-name>pushlet</servlet-name>
		<url-pattern>/pushlet.srv</url-pattern>
	</servlet-mapping>
</web-app>
  • 后台代码HelloWorldPlushlet.java,该类包含一个内部类
package com;
import nl.justobjects.pushlet.core.Event;
import nl.justobjects.pushlet.core.EventPullSource;
public class HelloWorldPlushlet {	
	static public class HwPlushlet extends EventPullSource {
		// 休眠五秒
		@Override
		protected long getSleepTime() {
			return 5000;
		}
		@Override
		protected Event pullEvent() {
			Event event = Event.createDataEvent("/cuige/he");
			event.setField("mess", "hello,world!Plushlet!");
			return event;
		}
	}
}
  •  sources.properties清理其他,定义自己发布的内容

 

source1=com.HelloWorldPlushlet$HwPlushlet
  •  在JSP中调用
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<meta http-equiv="Pragma" content="no-cache" />
		<script type="text/javascript" src="ajax-pushlet-client.js"></script>		
		<script type="text/javascript">
			PL._init(); 
			PL.joinListen('/cuige/he');
			function onData(event) { 
				alert(event.get("mess")); 
				// 离开
				// PL.leave();
			}
		</script>
	</head>
	<body>
		<center>
		<h1>
			my first pushlet!
		</h1>
		</center>
	</body>
</html>

 

  •  将工程部署到Tomcat后访问,该页面以五秒钟一个间隔,收到后台传来的数据!

工程部署后如下图展示

 每次访问时,后台都会打印增加到管理中的用户信息,当关闭浏览器后,服务器会在超时后自动清理!

 

请您到ITEYE看我的原创:http://cuisuqiang.iteye.com

或支持我的个人博客,地址:http://www.javacui.com

 

15
2
分享到:
评论
3 楼 boys 2012-08-09  
楼主是好人
2 楼 cuisuqiang 2012-03-22  
kingj 写道
这个有什么用呢

这个你可以百度一下的
1 楼 kingj 2012-03-22  
这个有什么用呢

相关推荐

    PushLet实例,可直接运行

    5. **文档**:可能包含简单的使用指南或API文档,帮助开发者理解如何部署和使用PushLet实例。 使用这个实例,开发者可以学习如何设置PushLet服务器,创建推送通道,以及在客户端处理推送的消息。这对于学习和实践...

    pushlet实例以及jar

    为了更好地理解和使用这个Pushlet实例,开发者需要做以下几步: 1. **下载与解压**:首先,需要下载提供的压缩包文件,并将其解压到本地工作目录。 2. **研究源码**:查看提供的Pushlet实例代码,了解其工作原理和...

    PUSHLET即时通讯工程实例

    **PUSHLET即时通讯工程实例详解** PUSHLET是一种基于Java技术实现的即时通讯系统,它允许服务器主动向客户端推送数据,而无需客户端持续轮询请求。这种技术在实时性要求高的应用中非常常见,如在线聊天、股票交易、...

    pushlet实例(java服务端推送消息)

    此实例采用 pushlet2.0.4 官方最新 servlet+jsp 实现多个客户端连接到web服务器,由服务端推送消息至客户端(或指定id的客户端),代码中没有用官网的jar文件,而是用的源码,做了一定的修改,实现了每个客户端都可以...

    PushLet实例,服务器消息推送

    【标题】"PushLet实例,服务器消息推送"指的是一个基于Java技术实现的服务器端消息推送系统,名为PushLet。在互联网应用中,实时性是非常重要的一个特性,例如在线聊天、股票更新、新闻推送等场景。传统的HTTP协议是...

    pushlet 之 官方示例解读与改造

    服务器端,Pushlet使用一个叫做`PushServer`的类来处理来自客户端的订阅请求。订阅者通过发送一个HTTP GET请求到特定URL来订阅消息,URL中包含了订阅的主题。服务器端会将这个订阅请求保存下来,并保持与客户端的...

    pushlet服务器推技术例子

    通过上述机制,Pushlet服务器推技术实例能够实现高效的实时通信,尤其适用于需要实时交互的应用,如在线聊天室、实时股票报价等。在压缩包文件“pushlet”中,可能包含了实现Pushlet技术的源代码、配置文件和示例...

    comet 框架 之 pushlet

    在pushlet-2.0.3这个压缩包中,可能包含了Pushlet框架的源代码、文档、示例代码和配置文件等,用于帮助开发者理解和使用Pushlet。开发者可以通过阅读源码了解其工作原理,参考示例快速入门,通过配置文件定制Pushlet...

    pushlet

    3. **事件驱动**:Pushlet使用事件驱动的架构,当服务器端有新的数据可用时,会触发事件并进行推送。 4. **兼容性**:可能支持多种操作系统和Web服务器,以适应不同的部署环境。 5. **API**:提供一套API供开发者...

    pushlet jar包下载

    服务器推 pushlet 服务器推 pushlet 服务器推 pushlet 服务器推 pushlet

    服务器推送pushlet讲解

    这个名为"pushlet-record.txt"的文件可能包含了Pushlet框架的使用记录、日志信息或者是一些示例代码。分析这个文件可以帮助你更好地理解和使用Pushlet框架,例如,你可以找到服务器如何处理推送事件,客户端如何建立...

    java服务端推送实例-pushlet-及中文问题

    本实例将介绍如何使用Pushlet实现服务端推送,并解决中文推送时出现的问题。 首先,我们来看Pushlet的基本原理。Pushlet基于Servlet和JSP技术,通过HTTP连接保持来实现实时通信。当客户端(浏览器)与服务器建立...

    pushlet使用说明(包括中文乱码)

    在使用 Pushlet 进行部署时,以下是一些关键步骤: 1. **下载 Pushlet**:首先,你需要从官方网站获取 Pushlet 的最新版本,例如文中提到的 pushlet-2.0.4 版本。 2. **创建 Web 项目**:在 IDE(如 MyEclipse)中...

    使用Ext Pushlet 实现的点对点聊天功能最新

    前台使用Ext ,后台使用pushlet /pushlet/WebRoot/index.jsp 页面主要包含几个部分。 Ext.PUSHLET_URL='piccUtil'; // 发送消息的地址 Ext.fcontent='fcontent'; // 显示窗口或有新消息时, 显示好友ID的区域 ...

    pushlet简单配置应用

    5. **客户端JavaScript使用**:在HTML页面中,你需要引入`ajax-pushlet-client.js`这个客户端JavaScript库。然后,通过调用`PL._init()`初始化Pushlet,`PL.joinListen('/pushlet/test')`订阅特定的主题,例如'/...

    pushlet例子

    Pushlet服务器使用Servlet容器(如Tomcat)运行,处理来自客户端的连接,并负责推送数据。Pushlet客户端通常是一个JavaScript脚本,它在用户浏览器中运行,用于建立与服务器的连接并接收推送的数据。 1. **Pushlet...

    使用Ext Pushlet 实现的点对点聊天功能

    前台使用Ext ,后台使用pushlet /pushlet/WebRoot/index.jsp 页面主要包含几个部分。 Ext.PUSHLET_URL='piccUtil'; // 发送消息的地址 Ext.fcontent='fcontent'; // 显示窗口或有新消息时, 显示好友ID的区域 ...

    Pushlet的Ajax-pushlet-client.js分析

    `_doRequest(anEvent, aQuery)`是发送请求的关键,它根据当前状态和事件决定是否发起请求,同时使用回调函数`_onResponse`处理响应。`_getWebRoot`方法获取项目根目录,确保请求URL的正确性。`_getXML`方法则负责...

    pushlet.jar 和示例工程

    示例工程则提供了一个快速入门的起点,通过实际运行和调试,开发者可以快速掌握Pushlet的使用方法。 总的来说,Pushlet框架是实现Web应用中服务器主动推送消息的一个强大工具,尤其适用于需要实时交互的场景。通过...

Global site tag (gtag.js) - Google Analytics