任何熟悉websocket和java EE的人都可以提供帮助!
我正在尝试使用struts2框架实现带有websocket的.jsp页面,并且似乎某种方式无法建立websocket连接。
我将以下javascript链接到我的页面
window.onload = init;
var socket = new WebSocket("ws://localhost:8080/MyFirstWebProject/actions");
socket.onmessage = OnMessage;
socket.onpen = onOpen;
function onOpen(){
alert(" called1")
}
function OnMessage(event){
}
function addToOnlineList(user){
}
function init(){
}
服务器端:
@ApplicationScoped
@ServerEndpoint("/actions")
public class ServerEndPoint{
@Inject private SessionHandler sessionHandler;
@OnOpen
public void OnOpen(Session session){
System.out.println("User: ");
sessionHandler.addSession(session);
}
@OnClose
public void OnClose(Session session){
sessionHandler.removeSession(session);
}
@OnError
public void OnError(Throwable error){
System.out.println(error.toString());
}
我尝试过添加
<constant name="struts.action.excludePattern" value="ws://*"/>
到struts.xml来排除ws:pattern但它仍然不起作用
问题是没有调用called1警报,暗示websocket没有成功建立,并且在控制台中它给出了
There is no Action mapped for namespace / and action name actions. - [unknown location]
错误