java - Queue UnavailableException : no queue available to send.(队列或 session 可能已过期)

标签 java gwt errai

同时调用 Errai 服务时

抛出下面的错误,据我所知,这是由于 Errai 总线断开连接造成的?如果是这样,是否意味着 Errai 总线无法处理同时通话?

ERROR] org.jboss.errai.bus.server.QueueUnavailableException: no queue available to send. (queue or session may have expired): (session id: e9f949d0d11da18f88adb8a2ccd357b7a23456dfb3b732f7fec963e9bdfddfb)
ERROR at org.jboss.errai.bus.server.ServerMessageBusImpl.getQueueByMessage(ServerMessageBusImpl.java:1251)
ERROR at org.jboss.errai.bus.server.ServerMessageBusImpl.send(ServerMessageBusImpl.java:675)
ERROR at org.jboss.errai.bus.client.api.base.ConversationMessageWrapper.sendNowWith(ConversationMessageWrapper.java:228)
ERROR at org.jboss.errai.bus.client.api.base.DefaultMessageBuilder$1.sendNowWith(DefaultMessageBuilder.java:78)
ERROR at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:107)
ERROR at org.jboss.errai.bus.client.util.ErrorHelper.sendClientError(ErrorHelper.java:77)
ERROR at org.jboss.errai.bus.client.util.ErrorHelper.handleMessageDeliveryFailure(ErrorHelper.java:170)
ERROR at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:53)
ERROR at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:93)
ERROR at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:107)
ERROR at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:117)
ERROR at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
ERROR at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
ERROR at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
ERROR at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1097)
ERROR at org.jboss.resteasy.plugins.server.servlet.FilterDispatcher.doFilter(FilterDispatcher.java:63)
ERROR at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
ERROR at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
ERROR at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
ERROR at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
ERROR at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
ERROR at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
ERROR at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
ERROR at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
ERROR at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
ERROR at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
ERROR at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
ERROR at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
ERROR at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
ERROR at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
ERROR at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
ERROR at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
ERROR at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
ERROR at org.mortbay.jetty.Server.handle(Server.java:324)
ERROR at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
ERROR at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843)
ERROR at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647)
ERROR at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
ERROR at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
ERROR at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
ERROR at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)

最佳答案

这可能是因为您正在使用 errai.dispatcher_implementation=org.jboss.errai.bus.server.SimpleDispatcher

使用 AsyncDispatcher 可能会有更好的运气

您还可以在https://github.com/errai/errai/blob/master/errai-bus/src/main/java/org/jboss/errai/bus/client/api/BusLifecycleListener.java上收听总线状态

关于java - Queue UnavailableException : no queue available to send.(队列或 session 可能已过期),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17259574/

相关文章:

java - 如何在 JTextArea 或 JTextPane 中显示多个插入符号

GWT,删除历史标记

java - 无法调试 gwt 2.8 和 java 1.8 版本的 gwt 测试

java - Errai 中@Default 字段的模糊解析

java - 将字母数字转换为 ascii 并递增

java - 隐藏响应对象中的 JSON 字段

java - CDI 事件未触发

java - 让 JQuery-UI 插件与 Errai 一起使用

java - Jython:包括自定义 Java 类 [oanda]

java - 将 GWT xml.client.Document 转换为 XML 字符串