I am using Intellij IDEA. And i am trying to coding java websocket. But i have an error. How can i fix this bug.?
public class Main {
public static void main(String[] args) throws NTLMException {
runServer();
}
public static void runServer() throws NTLMException {
Server s = new Server("localhost", 8000, "/ws", WsServer.class);
try {
s.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Please press a key to stop the server.");
reader.readLine();
} catch (Exception e) {
throw new RuntimeException(e);
} finally {
s.stop();
}
@ServerEndpoint("/websocket")
public class WsServer {
private Logger logger = Logger.getLogger(this.getClass().getName());
@OnOpen
public void onOpen(Session session) {
logger.info("Connected.:" + session.getId());
}
@OnMessage
public String onMessage(String message, Session session) {
switch (message) {
case "quit":
try {
session.close(new CloseReason(CloseCodes.NORMAL_CLOSURE, "END"));
} catch (IOException e) {
throw new RuntimeException(e);
}
break;
}
return message;
}
@OnClose
public void onClose(Session session, CloseReason closeReason) {
logger.info(String.format("Session %s closed because of %s", session.getId(), closeReason));
}
}
Exception in thread "main" java.lang.NoClassDefFoundError: > javax/websocket/DeploymentException at > ws.Main.runServer(Main.java:14) at ws.Main.main(Main.java:10) Caused > by: java.lang.ClassNotFoundException: > javax.websocket.DeploymentException at > java.net.URLClassLoader.findClass(URLClassLoader.java:382) at > java.lang.ClassLoader.loadClass(ClassLoader.java:418) at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at > java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 2 more