`
yangzc106
  • 浏览: 156704 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基于html5的WebSocket使用方式。承接jetty配置

阅读更多

html5学习总结:

 

创建类:WebSearchServlet.java

package org.search.servlet;

import javax.servlet.http.HttpServletRequest;

import org.eclipse.jetty.websocket.WebSocket;
import org.eclipse.jetty.websocket.WebSocketServlet;

public class WebSearchServlet extends WebSocketServlet{

	/**
	 * 
	 */
	private static final long serialVersionUID = 5136484809757218548L;

	public WebSocket doWebSocketConnect(HttpServletRequest arg0, String arg1) {
		return new SearchServlet();
	}
}

 

创建类:SearchServlet.java

package org.search.servlet;

import org.eclipse.jetty.websocket.WebSocket;

public class SearchServlet implements WebSocket{

	public void onClose(int arg0, String arg1) {
		System.out.println("onClose");
	}

	public void onOpen(final Connection conn) {
		System.out.println("onOpen");
		 new Thread() {
             @Override
             public void run() {
                 try {
                	 conn.sendMessage("sdfsdf");
                	 int i =0;
                     while (true) {
                         sleep(1000);
                         conn.sendMessage("Count:" + (i++));
                     }
                 } catch (final Exception e) {
                     System.err.println(e.getMessage());
                 }
             }
         }.start();
	}

}

 

在JSP目录下新建文件comet.html内容如下:

<html> 
    <head> 
        <title>WebSoket Demo</title> 
        <script type="text/javascript"> 
            if (!window.WebSocket) { 
                alert("WebSocket not supported by this browser!"); 
            } 
             
            function display() { 
                var valueLabel = document.getElementById("valueLabel"); 
                valueLabel.innerHTML = ""; 
                var ws = new WebSocket("ws://localhost:9999/comet.do"); 
                ws.onmessage = function(evt) { 
                    valueLabel.innerHTML = evt.data; 
                }; 

                ws.onclose = function() { 
                }; 

                ws.onopen = function() { 
                    ws.send("Hello, Server!"); 
                }; 
                
            } 
        </script> 
    </head> 
    <body onload="display();"> 
        <div id="valueLabel"></div> 
    </body> 
</html>

 

运行jetty.访问地址http://localhost:9999/comet.html效果如下:

 

  • 大小: 37.2 KB
分享到:
评论
5 楼 yangzc106 2013-07-22  
tomcat支持,但需要修改服务端http协议
4 楼 yangzc106 2013-07-22  
Java_Jerry 写道
问下:var ws = new WebSocket("ws://localhost:9999/comet.do"); 中的WebSockt,用的是什么插件? 

webSocket是html5的
3 楼 Java_Jerry 2013-07-09  
问下:var ws = new WebSocket("ws://localhost:9999/comet.do"); 中的WebSockt,用的是什么插件? 
2 楼 hsys 2011-09-08  
哥们,你这个导入了哪些包?  我用Tomcat做web容器,导入jetty的一些包,总是报错,java.lang.NullPointerException
at org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:106)
at org.eclipse.jetty.websocket.WebSocketServlet.service(WebSocketServlet.java:77)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
at java.lang.Thread.run(Thread.java:619)
1 楼 limingnihao 2011-08-04  
没看懂啊。楼主,威慑呢么用jetty,tomcat支持么。

相关推荐

    websocket+tomcat+jetty+netty

    在这个例子中,可能包含了实现WebSocket服务器端逻辑的Servlet或过滤器,以及相关的配置文件。 总结来说,"websocket+tomcat+jetty+netty"这个主题涵盖了WebSocket协议及其在不同服务器框架中的实现。Tomcat、Jetty...

    jetty html5 websocket服务器

    Jetty HTML5 WebSocket服务器是一种基于Java的轻量级Web服务器,它支持HTML5的WebSocket协议,使得实时双向通信成为可能。WebSocket是Web应用程序中的一个关键技术,它允许客户端和服务器之间建立持久连接,从而实现...

    构建实时Web应用(基于HTML5 WebSocket、PHP和jQuery)

    本文将深入探讨如何使用HTML5的WebSocket协议、PHP后端处理以及jQuery前端库来构建实时Web应用。WebSocket提供了一种全双工的通信机制,允许服务器与客户端之间进行连续的数据交换,而不仅仅是HTTP请求-响应模式。 ...

    用jetty8.0写的websocket实现的简单聊天程序

    WebSocket是HTML5中引入的一种新的通信协议,它允许在客户端和服务器之间建立持久的全双工连接,使得数据可以双向实时传输。在这个“用jetty8.0写的websocket实现的简单聊天程序”中,我们将深入探讨如何利用Jetty ...

    jetty实现websocket功能

    5. **配置Jetty服务器**: 在你的Jetty服务器配置中,你需要添加WebSocket的适配器。这通常在`Server`实例的初始化阶段完成,例如: ```java Server server = new Server(port); ServerSocketConnector connector ...

    基于websocket和jetty8的聊天室demo

    在本“基于websocket和jetty8的聊天室demo”中,我们将探讨如何使用Jetty 8这个轻量级的Java Web服务器和Servlet容器,结合HTML5的WebSocket API来实现一个简单的聊天室功能。 首先,让我们了解Jetty 8。Jetty是一...

    基于jetty8 websocket的例子

    在本文中,我们将深入探讨如何使用Jetty 8实现WebSocket技术来构建一个实时通信的聊天工具。WebSocket协议是一种在客户端和服务器之间建立长连接的协议,它为双向通信提供了低延迟、高效的解决方案,特别适合实时...

    jetty-websocket-7.6.10.v20130312.jar

    java运行依赖jar包

    基于HTML5 WebSocket服务端的封装

    在使用这个基于HTML5 WebSocket服务端封装的项目时,你需要确保你的环境支持WebSocket,并且理解基本的WebSocket交互流程。此外,根据readme文件的指示配置和运行服务器,然后在客户端使用提供的API与服务端建立...

    基于Springboot+Websocket的简单聊天室

    基于Springboot+Websocket的简单聊天室 基于Springboot+Websocket的简单聊天室 基于Springboot+Websocket的简单聊天室 基于Springboot+Websocket的简单聊天室 基于Springboot+Websocket的简单聊天室 基于Springboot+...

    HTML5 WebSocket权威指南

    书中讨论了基于WebSocket的架构师如何减少不必要的网络开销和延迟层,如何通过WebSocket对广泛使用的协议(如XMPP和STOMP)进行分层,如何保护WebSocket连接和在企业部署基于 WebSocket的应用程序。主要内容包括: ...

    HTML5WebSocket权威指南

    资源名称:HTML5 WebSocket权威指南内容简介:《HTML5 WebSocket权威指南》是HTML5 WebSocket领域最权威的著作之一,它系统、全面地讲解了HTML5 WebSocket的各个方面,是Web开发人员和架构师学习WebSocket的最佳选择...

    基于html5websocket java实现简单通讯

    WebSocket是HTML5中引入的一种新的通信协议,它提供了一种在客户端和服务器之间进行全双工、低延迟的通信方式,极大地改善了实时性要求高的Web应用。本教程将介绍如何利用HTML5的WebSocket API与Java后端进行简单...

    基于springboot实现websocket客户端和服务端

    使用Springboot集成的websocket需要使用到以下几个类/接口: WebSocketHandler:WebSocket消息以及生命周期事件的处理器。 WebSocketConfigurer:对WebSocket进行配置,包括配置拦截器、配置接口地址。 ...

    构建实时Web应用:基于HTML5 WebSocket、PHP和jQuery(对应英文版)

    基于HTML5 WebSocket、PHP和jQuery的实时Web应用开发,提供了一种高效、实时地交换数据的方式。以下是相关的知识点详解: ### 实时Web应用概念 实时Web应用指的是那些能够实时响应用户行为或数据变化的应用,这类...

    使用 HTML5 WebSocket 构建实时 Web 应用

    ### 使用 HTML5 WebSocket 构建实时 Web 应用 #### HTML5 WebSocket 概述与重要性 HTML5 WebSocket 是一种新兴的技术,它被设计用于在客户端(通常是浏览器)与服务器之间建立持久的双向通信连接。这项技术对于...

    基于HTML5的websocket

    基于HTML5的websocket

    java开发基于SpringBoot+WebSocket+Redis分布式即时通讯群聊系统.zip

    Java开发基于SpringBoot+WebSocket+Redis分布式即时通讯群聊系统。一个基于Spring Boot + WebSocket + Redis,可快速开发的分布式即时通讯群聊系统。适用于直播间聊天、游戏内聊天、客服聊天等临时性群聊场景。 ...

    Spring-Boot-Jetty-WebSocket-Example:如何使用Spring Boot配置Jetty WebSocket的基本示例

    在本文中,我们将深入探讨如何使用Spring Boot与Jetty服务器集成来实现WebSocket通信。WebSocket是一种在客户端和服务器之间建立持久连接的协议,允许双向实时数据传输。Spring Boot简化了Java应用的开发,包括...

Global site tag (gtag.js) - Google Analytics