Openfire can be configured to allow HTTP Bind / BOSH connections (in the admin panel under "Server" -> "Server Settings" -> "Http Binding"). The feature is enabled by default.
When the feature gets disabled, and the enabled again, new BOSH connections made to Openfire fail with stacktraces in the log file:
2015.12.07 11:12:54 WARN [Jetty-QTP-BOSH-114]: org.eclipse.jetty.server.HttpInput - java.util.concurrent.RejectedExecutionException: Task org.jivesoftware.openfire.http.HttpSession$HttpPacketSender@71deb7b0 rejected from java.util.concur
2015.12.07 11:12:54 WARN [Jetty-QTP-BOSH-114]: org.jivesoftware.openfire.http.HttpBindServlet - Error reading request data from [127.0.0.1]
java.util.concurrent.RejectedExecutionException: Task org.jivesoftware.openfire.http.HttpSession$HttpPacketSender@71deb7b0 rejected from java.util.concurrent.ThreadPoolExecutor@54edbe37[Terminated, pool size = 0, active threads = 0, queue
at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2048)
at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:821)
at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1372)
at org.jivesoftware.openfire.http.HttpSessionManager.execute(HttpSessionManager.java:375)
at org.jivesoftware.openfire.http.HttpSession$HttpPacketSender.init(HttpSession.java:1274)
at org.jivesoftware.openfire.http.HttpSession$HttpPacketSender.access$100(HttpSession.java:1261)
at org.jivesoftware.openfire.http.HttpSession.forwardRequest(HttpSession.java:591)
at org.jivesoftware.openfire.http.HttpBindServlet.handleSessionRequest(HttpBindServlet.java:249)
at org.jivesoftware.openfire.http.HttpBindServlet.processContent(HttpBindServlet.java:204)
at org.jivesoftware.openfire.http.HttpBindServlet$ReadListenerImpl.onAllDataRead(HttpBindServlet.java:423)
at org.eclipse.jetty.server.HttpInput.run(HttpInput.java:441)
at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1175)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:354)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)
It appears that an executor service is not accepting new tasks any longer.
Openfire can be configured to allow HTTP Bind / BOSH connections (in the admin panel under "Server" -> "Server Settings" -> "Http Binding"). The feature is enabled by default.
When the feature gets disabled, and the enabled again, new BOSH connections made to Openfire fail with stacktraces in the log file:
2015.12.07 11:12:54 WARN [Jetty-QTP-BOSH-114]: org.eclipse.jetty.server.HttpInput - java.util.concurrent.RejectedExecutionException: Task org.jivesoftware.openfire.http.HttpSession$HttpPacketSender@71deb7b0 rejected from java.util.concur 2015.12.07 11:12:54 WARN [Jetty-QTP-BOSH-114]: org.jivesoftware.openfire.http.HttpBindServlet - Error reading request data from [127.0.0.1] java.util.concurrent.RejectedExecutionException: Task org.jivesoftware.openfire.http.HttpSession$HttpPacketSender@71deb7b0 rejected from java.util.concurrent.ThreadPoolExecutor@54edbe37[Terminated, pool size = 0, active threads = 0, queue at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2048) at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:821) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1372) at org.jivesoftware.openfire.http.HttpSessionManager.execute(HttpSessionManager.java:375) at org.jivesoftware.openfire.http.HttpSession$HttpPacketSender.init(HttpSession.java:1274) at org.jivesoftware.openfire.http.HttpSession$HttpPacketSender.access$100(HttpSession.java:1261) at org.jivesoftware.openfire.http.HttpSession.forwardRequest(HttpSession.java:591) at org.jivesoftware.openfire.http.HttpBindServlet.handleSessionRequest(HttpBindServlet.java:249) at org.jivesoftware.openfire.http.HttpBindServlet.processContent(HttpBindServlet.java:204) at org.jivesoftware.openfire.http.HttpBindServlet$ReadListenerImpl.onAllDataRead(HttpBindServlet.java:423) at org.eclipse.jetty.server.HttpInput.run(HttpInput.java:441) at org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1175) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:354) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Thread.java:745)
It appears that an executor service is not accepting new tasks any longer.