Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.util.ArrayList;
  3. import java.util.logging.Level;
  4. import java.util.logging.Logger;
  5.  
  6. import javax.servlet.annotation.WebServlet;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.websocket.OnClose;
  9. import javax.websocket.OnError;
  10. import javax.websocket.OnMessage;
  11. import javax.websocket.OnOpen;
  12. import javax.websocket.Session;
  13. import javax.websocket.server.ServerEndpoint;
  14.  
  15. @WebServlet("/chat")
  16. @ServerEndpoint(value = "/chat")
  17. public class chat extends HttpServlet {
  18. private static final long serialVersionUID = 1L;
  19.  
  20. /**
  21. * @see HttpServlet#HttpServlet()
  22. */
  23. private static ArrayList<Session> sesije;
  24. private static String ceoChat="";
  25. public chat() {
  26.  
  27. super();
  28. if(sesije==null) sesije = new ArrayList<>();
  29. // TODO Auto-generated constructor stub
  30. }
  31.  
  32. private static final Logger LOGGER =
  33. Logger.getLogger(chat.class.getName());
  34.  
  35. @OnOpen
  36. public synchronized void onOpen(Session session) throws IOException {
  37. System.out.println("DODAT KORISNIK");
  38. sesije.add(session);
  39. LOGGER.log(Level.INFO, "New connection with client: {0}",
  40. session.getId());
  41. for (Session sess : sesije) {
  42. System.out.println(sess.getId());
  43. sess.getBasicRemote().sendText(ceoChat);
  44. }
  45. }
  46.  
  47. @OnMessage
  48. public String onMessage(String message, Session session) throws IOException {
  49.  
  50. LOGGER.log(Level.INFO, "New message from Client [{0}]: {1}",
  51. new Object[] {session.getId(), message});
  52. ceoChat+= message+"<br>";
  53.  
  54. System.out.println("BROJ SESIJA "+sesije.size());
  55. System.out.println(ceoChat);
  56. for (Session sess : sesije) {
  57. sess.getBasicRemote().sendText(ceoChat);
  58. }
  59. return ceoChat;
  60. }
  61.  
  62. @OnClose
  63. public void onClose(Session session) {
  64. LOGGER.log(Level.INFO, "Close connection for client: {0}",
  65. session.getId());
  66. }
  67.  
  68. @OnError
  69. public void onError(Throwable exception, Session session) {
  70. LOGGER.log(Level.INFO, "Error for client: {0}", session.getId());
  71.  
  72. }
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement