main方法启动tomcat支持的WebSocke…

来源:互联网 发布:如何加入淘宝同学 编辑:程序博客网 时间:2024/04/28 17:22
package com.xhzr.controller;

import java.net.URI;

import javax.websocket.ContainerProvider;
import javax.websocket.WebSocketContainer;

public class WebSocketClient {
public static void main(String[] args) {
try {
WebSocketContainer container =ContainerProvider.getWebSocketContainer();
MyClient client = new MyClient();


container.connectToServer(client, newURI("ws://try.ukebms.com:9500/xhzr-chat/chatServer/40/68/119"));

// container.setDefaultMaxSessionIdleTimeout(5000L);
int turn = 0;
while (turn++ < 10) {
client.send("client send: " + turn);
Thread.sleep(1000);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

============================================= 

package com.xhzr.controller;

import javax.websocket.ClientEndpoint;
import javax.websocket.OnClose;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;

import org.apache.log4j.Logger;

@ClientEndpoint
public class MyClient {
private static Logger logger =Logger.getLogger(MyClient.class);
private Session session;

@OnOpen
public void open(Session session) {
logger.info("Client WebSocket is opening...");
this.session = session;
}

@OnMessage
public void onMessage(String message) {
logger.info("Server send message: " + message);
}

@OnClose
public void onClose() {
logger.info("Websocket closed");
}

public void send(String message) {
this.session.getAsyncRemote().sendText(message);
}
}


main方法启动tomcat支持的WebSocketClient报 <wbr>ContainerProvider.getWebSocketContainer()错


解决方案,导入tomcat bin 目录下的tomcat-juli.jar 到Bootstrap类加载器对应的实体中




main方法启动tomcat支持的WebSocketClient报 <wbr>ContainerProvider.getWebSocketContainer()错

原创粉丝点击