昨天就了一下glassfish例子 ,与大家分享一下
新建一个servlet:
package org.comet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sun.enterprise.web.connector.grizzly.comet.CometContext;
import com.sun.enterprise.web.connector.grizzly.comet.CometEngine;
public class CometChat extends HttpServlet
{
/**
* Constructor of the object.
*/
CometEngine engine = null;
CometContext metaContext = null;
public CometChat()
{
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy()
{
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
CometResponseHandler handler = null;
response.setContentType("text/plain");
response.setStatus(HttpServletResponse.SC_OK);
if(request.getRequestURI().equals(request.getContextPath()+"/servlet/CometChat")){
handler = new CometResponseHandler(request.getContextPath()+"/servlet/CometChat");
handler.attach(response);
metaContext.addCometHandler(handler);
}
PrintWriter writer = response.getWriter();
writer.flush();
writer.println("---START---");
writer.flush();
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException
* if an error occurs
*/
public void init() throws ServletException
{
// Put your code here
super.init();
engine = CometEngine.getEngine();
metaContext = engine.register("/servlet/CometChat");
Thread t = new Thread()
{
public int i = 0;
public void run()
{
while (true)
{
try
{
Thread.sleep(10000);
metaContext.notify(new Integer(i++));
}
catch (IOException e)
{
e.printStackTrace();
}
catch (InterruptedException e)
{
e.printStackTrace();
return;
}
}
}
};
t.start();
}
}
然后有一个JavaBean
package org.comet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import com.sun.enterprise.web.connector.grizzly.comet.CometContext;
import com.sun.enterprise.web.connector.grizzly.comet.CometEngine;
import com.sun.enterprise.web.connector.grizzly.comet.CometEvent;
import com.sun.enterprise.web.connector.grizzly.comet.CometHandler;
public class CometResponseHandler implements CometHandler<HttpServletResponse>
{
private HttpServletResponse httpServletResponse;
private String contextPath = null;
public CometResponseHandler(String contextPath)
{
}
public void attach(HttpServletResponse httpServletResponse)
{
this.httpServletResponse = httpServletResponse;
}
public void onEvent(CometEvent event) throws IOException
{
System.out.println("==== onEvent =====");
PrintWriter printWriter = httpServletResponse.getWriter();
printWriter.println("Handler:" + this.toString() + " - event{type:\"" + event.getType() + "\",\""
+ event.attachment().toString() + "\"} IP=");
printWriter.flush();
}
public void onInitialize(CometEvent event) throws IOException
{
System.out.println("==== onInitialize =====");
}
public void onTerminate(CometEvent event) throws IOException
{
System.out.println("==== onTerminate =====");
onInterrupt(event);
}
public void onInterrupt(CometEvent event) throws IOException
{
System.out.println("==== onInterrupt =====");
CometEngine cometEngine = CometEngine.getEngine();
CometContext cometContext = cometEngine.getCometContext(contextPath);
cometContext.removeCometHandler(this);
}
}
deploy在glassfish吧
分享到:
相关推荐
glassfish服务器是Netbean的网络服务器之一
GlassFish服务器集群搭建.pdf
Glassfish 集群技术揭秘Glassfish 集群技术揭秘
NetBeans7.0.1如何成功添加GlassFish3.x服务器
本指南将阐述启动 GlassFish 服务器软件,封装和部署应用程序的基本步骤。同时还包括 Admin Console 和命令行工作的相关信息。要使用此快速入门指南,您必须首先安装 GlassFish 产品。有关下载及安装说明,请参见 ...
GlassFish 社区奉献的Java EE 应用服务器
解释了什么是应用服务器,以及与JavaEE 5.0规范的关系做了相关的说明,还介绍了Java EE 5.0规范所包含的新增的内容。文中以GlassFish应用服务器为例介绍了什么是参考实现(RI).
Glassfish应用服务器产品对比白皮书.pdf,主要跟weblogic进行对比。
GlassFish服务器开源版本5.0管理指南,提供了配置和管理GlassFish服务器开源版本的说明。
本教程详细的介绍了sun公司的推出的服务器glassfish安装部署的使用步骤,阐述了glassfish和tomcat服务器的异同,以及glassfish的优点!正在开发JavaEE的朋友如果你还没使用过glassfish,那么请你去www.sun.com下载...
GlassFish 是一款强健的商业兼容应用服务器,达到产品级质量,可免费用于开发、部署和重新分发。开发者可以免费获得源代码,还可以对代码进行更改。 GlassFish 是用于构建 Java EE 5应用服务器的开源开发项目的名称...
glassfish集群搭建手册glassfish集群搭建手册glassfish集群搭建手册
GlassFish4的下载和安装的详细步骤,下载地址,配置等。附带有GlassFish3的安装简述
glassfish-3.1.2-windows比Tomcat好用的服务器
高端研讨课程之- GlassFish (TM) 企业服务器管理和部署高端研讨课程之- GlassFish (TM) 企业服务器管理和部署
而且细节之处关键之处都是一带而过 很容易忽略 包括官方白皮书也是这样 所以写个文档和大家分享一下 文档中我分别写了界面配置方法和命令行批处理配置方法,希望对研究和使用glassfish服务器的童鞋有所帮助。
Glassfish部署web项目
GlassFish2.0的安装
glassfish 安装配置文档 发布、eclipse调试
GlassFish 的安装和启动,中文的呀