這裏是我的設置在春天一個簡單的WebSocket控制器:的NoSuchMethodError WebUtils.isValidOrigin春天的WebSocket
@Controller
@RequestMapping("/myHandler")
public class MyHandler extends TextWebSocketHandler {
public void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
String reply = "Hello there!!!!!!!!";
session.sendMessage(new TextMessage(reply));
}
}
MCV-調度-servlet.xml中
<websocket:handlers allowed-origins="http://localhost">
<websocket:mapping path="/myHandler" handler="myHandler"/>
<websocket:handshake-interceptors>
<bean class="org.springframework.web.socket.server.support.HttpSessionHandshakeInterceptor"/>
</websocket:handshake-interceptors>
</websocket:handlers>
<bean id="myHandler" class="com.aexp.socket.MyHandler"/>
我所有的jar文件更新正確版本 但我得到以下錯誤:
HTTP Status 500 - Request processing failed; nested exception is org.springframework.web.socket.server.HandshakeFailureException: Uncaught failure for request http://localhost:8080/Websocket/myHandler; nested exception is java.lang.NoSuchMethodError: org.springframework.web.util.WebUtils.isValidOrigin(Lorg/springframework/http/HttpRequest;Ljava/util/Collection;)Z
root cause
org.springframework.web.socket.server.HandshakeFailureException: Uncaught failure for request http://localhost:8080/Websocket/myHandler; nested exception is java.lang.NoSuchMethodError: org.springframework.web.util.WebUtils.isValidOrigin(Lorg/springframework/http/HttpRequest;Ljava/util/Collection;)Z
org.springframework.web.socket.server.support.WebSocketHttpRequestHandler.handleRequest(WebSocketHttpRequestHandler.java:135)
org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:900)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:827)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
而當我嘗試克至在JS創建的WebSocket對象我得到以下幾點:
(Opcode -1)
這是我第一次嘗試使用WebSockets所以不知道我錯過了什麼。有人能指引我走向正確的方向嗎?謝謝。