Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
WebSocketOpenClose.java - Session Open and Close
How to provide call back methods for session open and close events with WebSocket API?
✍: FYIcenter.com
Adding session open and close event call back methods can be done
with @OnOpen and @OnCLose annotated methods as shown below:
// Copyright (c) 2016 FYIcenter.com import java.net.URI; import javax.websocket.ClientEndpoint; import javax.websocket.OnMessage; import javax.websocket.ContainerProvider; import javax.websocket.Session; import javax.websocket.WebSocketContainer; import javax.websocket.*; @ClientEndpoint public class WebSocketOpenClose { public static void main(String[] args) throws Exception { WebSocketContainer c = ContainerProvider.getWebSocketContainer(); URI u = new URI("wss://echo.websocket.org"); Session s = c.connectToServer(WebSocketOpenClose.class, u); System.out.println("WebSocket session info:"); System.out.println(" Protocol version: "+s.getProtocolVersion()); System.out.println(" Request URI: "+s.getRequestURI()); RemoteEndpoint.Basic r = s.getBasicRemote(); r.sendText("Hello there!"); Thread.sleep(1000*2); s.close(); } @OnMessage public void OnMessage(String message) { System.out.println("-- Message received: "+message); } @OnOpen public void OnOpen(Session session) { System.out.println("-- Session started: "+session.getId()); } @OnClose public void OnClose(Session session, CloseReason reason) { System.out.println("-- Session closed: "+session.getId()+" - "+reason); } }
You can compile and run the above example in a command window with Java SE JDK 8 and the tyrus-standalone-client.jar from Java EE 7 SDK:
>\fyicenter\jdk-1.8.0\bin\javac -cp \fyicenter\glassfish4\mq\lib\tyrus-standalone-client.jar WebSocketOpenClose.java >\fyicenter\jdk-1.8.0\bin\java -cp .;\fyicenter\glassfish4\mq\lib\tyrus-standalone-client.jar WebSocketOpenClose -- Session started: fefe38df-30fe-40d3-a18a-2a1e4d5bbcfd WebSocket session info: Protocol version: 13 Request URI: wss://echo.websocket.org -- Message received: Hello there! -- Session closed: fefe38df-30fe-40d3-a18a-2a1e4d5bbcfd - CloseReason[1000]
⇐ WebSocketEchoClient.java - WebSocket Echo Client
2018-01-16, 1584🔥, 0💬
Popular Posts:
What Is in Xerces-J-bin.2.12.2.zip? Xerces-J-bin.2.12.2.zip file is the distribution package ZIP fil...
ANTLR is a powerful parser generator for multiple programming languages including Java. ANTLR contai...
Where to find answers to frequently asked questions on Downloading and Installing Connector/J - JDBC...
What Is js.jar in Rhino JavaScript 1.7R5? js.jar in Rhino JavaScript 1.7R5 is the JAR file for Rhino...
JDK 11 jdk.jdeps.jmod is the JMOD file for JDK 11 JDeps tool, which can be invoked by the "jdeps" co...