同时拨打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上监听总线状态