openfire error when try to connect via http-bind

2019-08-01 12:26发布

问题:

Hello i an install in my local machine openfireserver.

Below this is my http-binding config: ![Openfire configure http-config][1]

I also add new user in Pidgin:

  1. protocol: Xmpp
  2. username: test
  3. domain: localhost
  4. resource: test
  5. pass: test

Advanced:

  1. port: 7070
  2. server: (nothing)
  3. file transfer proxies: proxy.eu.jabber.org
  4. URL BOSH protocol: http://localhost/http-bind/

but connection fail .

if i am try use this option:

  1. port: 7070
  2. BOSH URL : http://localhost:7070/http-bind/

i have got another error in openfire:

2013.03.15 20:50:15 org.eclipse.jetty.servlet.ServletHandler - /http-bind/
java.util.concurrent.RejectedExecutionException: Task org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender@65e92309 rejected from java.util.concurrent.ThreadPoolExecutor@18ee24bf[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
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$HttpPacketSender.init(HttpSessionManager.java:417)
at org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender.access$200(HttpSessionManager.java:405)
at org.jivesoftware.openfire.http.HttpSessionManager.forwardRequest(HttpSessionManager.java:319)
at org.jivesoftware.openfire.http.HttpBindServlet.handleSessionRequest(HttpBindServlet.java:254)
at org.jivesoftware.openfire.http.HttpBindServlet.parseDocument(HttpBindServlet.java:176)
at org.jivesoftware.openfire.http.HttpBindServlet.doPost(HttpBindServlet.java:145)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:480)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) 

and in xmpp pidigin console i have got err:

<auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5' client-uses-full-bind-result='true'/>
<head>
<meta http-equiv='Content-Type' content='text/html;charset=ISO-8859-1'/>

<title>Error 500 Task org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender@20a88f61 rejected from java.util.concurrent.ThreadPoolExecutor@18ee24bf[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]</title>

</head>
<body>
<h2>HTTP ERROR: 500</h2>

<p>Problem accessing /http-bind/. Reason:
<pre>    Task org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender@20a88f61 rejected from java.util.concurrent.ThreadPoolExecutor@18ee24bf[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]</pre>
</p>
<hr/>
<i>
<small>Powered by Jetty://</small>
</i>

how i can try connect to openfire via pidigin and use http-binding ???

回答1:

It appears that the size of the thread pool used to handle your inbound BOSH requests has been set to zero. By default this value should be 16, but this value may be overridden by either of two Openfire system properties:

xmpp.httpbind.worker.threads
xmpp.client.processing.threads

If either of these two properties have been set to zero or negative value, you should simply delete the invalid key/value pair(s) using the "System Properties" page on the admin console and then restart Openfire.