我正在使用位于以下位置的春天的官方示例(问候示例):
http://spring.io/guides/gs/messaging-stomp-websocket/
一切似乎工作得很好,当我按下连接时,我可以看到服务器正在建立连接。但是,在连接之后我提交了一个"名称"到服务器我没有得到任何错误,没有请求到达GreetingController。
我尝试将日志级别设置为跟踪,当我执行" send"时,我看到以下行:
22 Ar 2014 17:10:52 DEBUG DispatcherServlet - Successfully completed request
22 Apr 2014 17:10:52 DEBUG ExceptionTranslationFilter - Chain processed normally
22 Apr 2014 17:10:52 DEBUG HttpSessionSecurityContextRepository - SecurityContext is empty or contents are anonymous - context will not be stored in HttpSession.
22 Apr 2014 17:10:52 DEBUG SecurityContextPersistenceFilter - SecurityContextHolder now cleared, as request processing completed
22 Apr 2014 17:10:52 DEBUG LoggingWebSocketHandlerDecorator - Connection established, SockJS session id=taxwn2fu, uri=/MyWebApp/hello/535/taxwn2fu/websocket
22 Apr 2014 17:10:52 DEBUG SubProtocolWebSocketHandler - Started WebSocket session=taxwn2fu, number of sessions=1
22 Apr 2014 17:10:53 DEBUG StompDecoder - Decoded [Payload byte[0]][Headers={stompCommand=CONNECT, nativeHeaders={heart-beat=[10000,10000], accept-version=[1.1,1.0]}, simpMessageType=CONNECT, id=0686dda9-afa3-7a54-756c-89279ea33126, timestamp=1398175853000}]
22 Apr 2014 17:10:53 DEBUG StompEncoder - Encoded STOMP command=CONNECTED headers={heart-beat=[0,0], version=[1.1]}
22 Apr 2014 17:10:53 DEBUG StompDecoder - Decoded [Payload byte[0]][Headers={stompCommand=SUBSCRIBE, nativeHeaders={id=[sub-0], destination=[/topic/greetings]}, simpMessageType=SUBSCRIBE, simpSubscriptionId=sub-0, simpDestination=/topic/greetings, id=653538d3-0722-0325-2c23-8314abd70cc0, timestamp=1398175853008}]
22 Apr 2014 17:10:53 DEBUG DefaultSubscriptionRegistry - Adding subscription id=sub-0, destination=/topic/greetings
22 Apr 2014 17:10:56 DEBUG StompDecoder - Decoded [Payload byte[17]][Headers={stompCommand=SEND, nativeHeaders={content-length=[17], destination=[/app/hello]}, simpMessageType=MESSAGE, simpDestination=/app/hello, id=f9a608c0-6e02-7828-a057-a6b2b07b6af7, timestamp=1398175856489}]
22 Apr 2014 17:10:56 DEBUG SimpAnnotationMethodMessageHandler - Handling message, lookupDestination=/hello
任何想法?
P.S,这是我使用的js代码的一部分(与网站相同):
function connect() {
var socket = new SockJS('/MyWebApp/hello');
stompClient = Stomp.over(socket);
stompClient.connect({}, function(frame) {
setConnected(true);
console.log('Connected: ' + frame);
stompClient.subscribe('/topic/greetings', function(greeting){
showGreeting(JSON.parse(greeting.body).content);
});
});
}
function disconnect() {
stompClient.disconnect();
setConnected(false);
console.log("Disconnected");
}
function sendName() {
debugger;
var name = document.getElementById('name').value;
stompClient.send("/app/hello", {}, JSON.stringify({ 'name': name }));
}
答案 0 :(得分:1)
好吧,服务器正在捕获消息,但它没有做任何事情。所以,我认为你应该:
答案 1 :(得分:0)
好的,我遇到了弹簧配置问题,我没有扫描必要的bean目录。