###前提・実現したいこと
SockJS(https://github.com/sockjs/sockjs-client)というライブラリを使用して、簡易的なプログラムを実装しようとしています。
WebSocketと同様のことをしたいのですが、クライアント側とサーバ側でどのように実装すればいいのでしょうか?
※以下のコードで「404 (Not Found)」となってしまい接続できない状態です。
■test.js
open(); // 接続 function open() { if (webSocket == null) { // WebSocket の初期化 webSocket = new SockJS(http://" + location.host + "/socket/chat); // イベントハンドラの設定 webSocket.onopen = onOpen; } } // 接続イベント function onOpen(event) { chat("接続しました。"); }
■testWebsocket.java
@ServerEndpoint(value = "/chat") public class testWebsocket { @OnOpen public void onOpen(Session session, EndpointConfig config) { String id = session.getId(); echo("(" + id + ")が入室しました。", session); } private void echo(String message, Session session) { System.out.println(message); // 開いているセッション取得 Set<Session> sessions = session.getOpenSessions(); // セッション数分ループ for (Session tmp : sessions) { try { // メッセージ送信 tmp.getBasicRemote().sendText(message); } catch (Exception e) { // 例外の場合 e.printStackTrace(); } } } }
■test.html
<input type="text" data-name="message" size="100" /> <hr /> <div data-name="chat"></div>
あなたの回答
tips
プレビュー