Y como podria hacer para poder mandar mensajes entre dos usuarios unicamente tal y como lo tengo ahora, seria demasiado complicado
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúpackage com.apuntesdejava.websocket;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.EJB;
import javax.websocket.OnClose;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.RemoteEndpoint;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;
@ServerEndpoint("/broadcast")
public class MyEndpoint {
// EJB that fires an event when a new article appears
@EJB
// a collection containing all the sessions
private static final Set<Session> sessions =
Collections.synchronizedSet(new HashSet<Session>());
@OnOpen
public void onOpen(final Session session) {
sessions.add(session);
}
@OnClose
public void onClose(final Session session) {
// remove the session from the set
sessions.remove(session);
}
@OnMessage
public void broadcastArticle(String message) {
for (Session s : sessions) {
if (s.isOpen()) {
try {
// send the article summary to all the connected clients
s.getBasicRemote().sendText(message);
} catch (IOException ex) { }
}
}
}
}
<script type="text/javascript">
var wsUri = "ws://localhost:8080/Hlc/broadcast";
var websocket = new WebSocket(wsUri); //creamos el socket
websocket.onopen = function(evt) {
};
websocket.onmessage = function(evt) {
document.getElementById("msgArea").textContent += message.data + "\n";
console.log(message.data);
};
websocket.onerror = function(evt) {
log("oho!.. error:" + evt.data);
};
function log(mensaje) { //aqui mostrará el LOG de lo que está haciendo el WebSocket
var logDiv = document.getElementById("log");
logDiv.innerHTML += (mensaje + '<br/>');
}
function EnviarServidor() {
websocket.send(document.getElementById("msg").value)
document.getElementById("msg").value = "";
}
</script>