【发布时间】:2015-07-09 15:04:53
【问题描述】:
我们在 websockets 上使用 spring stomp,由 ActiveMQ 5.11.1 支持。 当客户端确认消息时,我收到此异常:
"<<< ERROR
内容类型:文本/纯文本 消息:收到消息 ID [ID\cjanus-61128-1430365808166-2\c1\c-1\c1\c1] 的意外 ACK 内容长度:722
org.apache.activemq.transport.stomp.ProtocolException: 收到消息 ID [ID:janus-61128-1430365808166-2:1:-1:1:1] 的意外 ACK 在 org.apache.activemq.transport.stomp.ProtocolConverter.onStompAck(ProtocolConverter.java:462) 在 org.apache.activemq.transport.stomp.ProtocolConverter.onStompCommand(ProtocolConverter.java:247) 在 org.apache.activemq.transport.stomp.StompTransportFilter.onCommand(StompTransportFilter.java:75) 在 org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) 在 org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214) 在 org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196) 在 java.lang.Thread.run(Thread.java:744)
这是客户端代码:
var sub_id = stompClient.subscribe('/user/guest/msg', function(greeting){
x = JSON.parse(greeting.body);
var message_id = greeting.headers['message-id']
stompClient.ack(message_id, sub_id);
}, {ack: 'client'});
我尝试将 ack 设置为客户个人,但没有帮助。 谁能告诉我我错过了什么/做错了什么?
【问题讨论】:
标签: spring websocket activemq stomp