0% encontró este documento útil (0 votos)
39 vistas3 páginas

Chat WebSocket en Java

Este documento describe cómo crear un chat en línea con WebSockets en Java. Primero, se crea un endpoint WebSocket llamado "Proceso" que maneja eventos como la apertura, cierre y mensajes de las sesiones. Luego, se modifica el archivo index.jsp para abrir una conexión WebSocket, enviar y recibir mensajes, y mostrarlos en la página. El script maneja eventos como open, message, close y escribe las respuestas en el div de mensajes.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
39 vistas3 páginas

Chat WebSocket en Java

Este documento describe cómo crear un chat en línea con WebSockets en Java. Primero, se crea un endpoint WebSocket llamado "Proceso" que maneja eventos como la apertura, cierre y mensajes de las sesiones. Luego, se modifica el archivo index.jsp para abrir una conexión WebSocket, enviar y recibir mensajes, y mostrarlos en la página. El script maneja eventos como open, message, close y escribe las respuestas en el div de mensajes.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Chat con WebSocket

1- Creamos un Web Socket EndPoint y lo llamamos Proceso y


escribimos el siguiente cdigo:

package ws;

import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];

/**
*
* @author usuario
*/
@ServerEndpoint("/proceso")
public class Proceso {
private static Set<Session> sessiones =
[Link](new HashSet<Session>());

@OnOpen
public void onOpen(Session session) {
[Link]([Link]() + "Ha abierto una conexion");
try {
[Link](session);
[Link]().sendText("Conexion establecida");
} catch (IOException ex) {
}
}

@OnMessage
public void onMessage(String mensaje, Session session) {
[Link]("Mensaje" + [Link]() + mensaje);
try {
for (Session s : sessiones) {
[Link]().sendText( mensaje);
}

} catch (IOException ex) {


}
}

@OnClose
public void onClose(Session session) {
[Link](session);
[Link]("Session " + [Link]() + " ha terminado");
}
}

2- Modificamos el archivo [Link]

<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project
Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>Chat on Line</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
</head>
<body>
<h4>Usuario:</h4>
<input type="text" id="usuarioinput">
<h4>Mensaje:</h4>
<input type="text" id="messageinput">
<div>
<p></p>
<p></p>
<button type="button" onclick="openSocket();">Open</button>
<button type="button" onclick="send();">Send</button>
<button type="button"
onclick="closeSocket();">Close</button>
</div>
<div id="messages"></div>
<script type="text/javascript">
var webSocket;
var messages = [Link]("messages");
function openSocket() {
if (webSocket !== undefined && [Link]
!== [Link])
{
writeResponse("WebSocket ya esta abierto");
return;
}
webSocket = new WebSocket("[Link]
[Link]+ [Link]+"proceso");
[Link] = function (event)
{
if ([Link] === undefined)
return;
writeResponse([Link]);
};
[Link] = function (event)
{
writeResponse([Link]);
};
[Link] = function (event)
{
writeResponse("Conexion cerrada");
};
}
function send()
{
try {
var usuario =
[Link]("usuarioinput").value;
var text =
[Link]("messageinput").value;
[Link](usuario + " dice: " + text);
[Link]("messageinput").value = "";
}
catch (err) {
}
}
function closeSocket()
{
try {
[Link]();
}
catch (err) {
}
}
function writeResponse(text)
{
[Link] += "<br/>" + text;
}
</script>
</body>
</html>

También podría gustarte