java web 无响应_java – Websocket无法正常工作:意外响应代码404

我试图用websockets创建

javaee应用程序,但无法让程序正常工作.使用Tomcat 7,带有websockets的

Java EE 7应用程序.

这是我的java代码:

import javax.websocket.CloseReason;

import javax.websocket.EndpointConfig;

import javax.websocket.OnClose;

import javax.websocket.OnError;

import javax.websocket.OnMessage;

import javax.websocket.OnOpen;

import javax.websocket.RemoteEndpoint;

import javax.websocket.Session;

import javax.websocket.server.ServerEndpoint;

@ServerEndpoint(value="/hello")

public class EchoEndpoint {

RemoteEndpoint.Async endpoint;

@OnOpen

public void open(Session session, EndpointConfig conf) {

//Connection opened.

System.out.println("EchoEndpoint on open");

endpoint = session.getAsyncRemote();

}

@OnMessage

public void onMessage(Session session, String msg) {

//Message received.

System.out.println("EchoEndpoint on message");

}

@OnError

public void error(Session session, Throwable error) {

//Connection error.

System.out.println("EchoEndpoint on error");

}

@OnClose

public void close(Session session, CloseReason reason) {

//Connection closed.

System.out.println("EchoEndpoint on close");

}

public void send(String string) {

System.out.println("Send called to EchoEndpoint");

endpoint.sendText(string);

}

}

web.xml中:

version="3.0"

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

index.html的:

WebSocket Test

var wsUri = "ws://localhost:8080/myapp/hello";

var output;

function init() {

output = document.getElementById("output");

testWebSocket();

}

function testWebSocket() {

websocket = new WebSocket(wsUri);

websocket.onopen = function(evt) { onOpen(evt) };

websocket.onclose = function(evt) { onClose(evt) };

websocket.onmessage = function(evt) { onMessage(evt) };

websocket.onerror = function(evt) { onError(evt) };

}

function onOpen(evt) {

writeToScreen("CONNECTED");

doSend("WebSocket rocks");

}

function onClose(evt) {

writeToScreen("DISCONNECTED");

}

function onMessage(evt) {

writeToScreen('RESPONSE: ' + evt.data+'');

//websocket.close();

}

function onError(evt) {

writeToScreen('ERROR: ' + evt.data);

}

function doSend(message) {

writeToScreen("SENT: " + message);

websocket.send(message);

}

function writeToScreen(message) {

var pre = document.createElement("p");

pre.style.wordWrap = "break-word";

pre.innerHTML = message;

output.appendChild(pre);

}

window.addEventListener("load", init, false);

WebSocket Test

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值