I installed openfire and created a couple users and am able to chat with Pidgin beautifully.
Now I'm trying to integrate Candy using http://candy-chat.github.io/candy/
and I can't even log in. The Firebug console reveals a number of 500 errors, and note the openfire error log below.
Any thoughts? The Candy forum [ https://groups.google.com/forum/#!topic/candy-chat/4erbMoDjLdc ] sent me here. Are there other web-based Instant Messengers that work better with OpenFire than Candy?
my website is called "testing"
I Enabled the required apaches mods: rewrite, proxy_http, proxy
and restarted apache succesfully.
Going to testing:7070 in the browser shows the following:
"Openfire HTTP Binding Service"
Apache config file says:
<VirtualHost *:80>
ServerName testing
ServerAdmin myemailaddressthatIcantposthere
ErrorLog /home/www/testing/logs/testing_error.log
DocumentRoot /home/www/testing/public
<Directory /home/www/testing/public>
</Directory>
</VirtualHost>
Here are my configurations from index.html:
Candy.init('http-bind/', {
core: {
// only set this to true if developing / debugging errors
debug: false,
// autojoin is a *required* parameter if you don't have a plugin (e.g. roomPanel) for it
// true
// - fetch info from server (NOTE: does only work with openfire server)
// ['removedemailforpost']
// - array of rooms to join after connecting
autojoin: true
},
view: { assets: 'res/' }
Apache .htaccess file:
AddDefaultCharset UTF-8
Options +MultiViews
RewriteEngine On
RewriteRule http-bind/ http://testing:7070/http-bind/ [P]
Firebug console response:
[Connection] Connecting
candy.min.js (line 1)
200 OK | 2ms | libs.min.js (line 2) |
SENT: <body rid='3175980887' xmlns='http://jabber.org/protocol/httpbind' to='testing' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/>
candy.min.js (line 1)
RECV: <body xmlns='http://jabber.org/protocol/httpbind' xmlns:stream='http://etherx.jabber.org/streams' from='testing' authid='d87231cf' sid='d87231cf' secure='true' requests='2' inactivity='30' polling='5' wait='60' hold='1' ack='3175980887' maxpause='300' ver='1.6'><stream:features><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>DIGEST-MD5</mechanism><mech anism>PLAIN</mechanism><mechanism>ANONYMOUS</mechanism><mechanism>CRAM-MD5</mech anism></mechanisms><compression xmlns='http://jabber.org/features/compress'><method>zlib</method></compression><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></stream:features></body>
candy.min.js (line 1)
500 Server Error | 3ms | libs.min.js (line 2) |
SENT: <body rid='3175980888' xmlns='http://jabber.org/protocol/httpbind' sid='d87231cf'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5'/></body>
candy.min.js (line 1)
"NetworkError: 500 Server Error - http://testing/http-bind/"
/http-bind/
500 Server Error | 2ms | libs.min.js (line 2) |
SENT: <body rid='3175980888' xmlns='http://jabber.org/protocol/httpbind' sid='d87231cf'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5'/></body>
candy.min.js (line 1)
"NetworkError: 500 Server Error - http://testing/http-bind/"
/http-bind/
SENT: <body rid='3175980888' xmlns='http://jabber.org/protocol/httpbind' sid='d87231cf'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5'/></body>
candy.min.js (line 1)
200 OK | 18ms | libs.min.js (line 2) |
TypeError: a.getAttribute is not a function
openfire error log:
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.jav a:586) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java :44) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598 ) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) at java.lang.Thread.run(Thread.java:701) 2014.07.15 02:19:30 org.jivesoftware.util.CertificateManager - Error decoding subjectAltName java.lang.ClassCastException: org.bouncycastle.asn1.DERTaggedObject cannot be cast to org.bouncycastle.asn1.ASN1Sequence at org.jivesoftware.util.CertificateManager.getSubjectAlternativeNames(Certificate Manager.java:260) at org.jivesoftware.util.CertificateManager.getPeerIdentities(CertificateManager.j ava:223) at org.jivesoftware.util.CertificateManager.isCertificate(CertificateManager.java: 371) at org.jivesoftware.util.CertificateManager.isRSACertificate(CertificateManager.ja va:322) at org.jivesoftware.openfire.admin.index_jsp._jspService(index_jsp.java:519) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) 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$CachedChain.doFilter(ServletHandler.ja va:1359) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1330) at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:74) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1330) at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:50) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1330) at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:78) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1330) at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:164) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1330) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:22 7) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:94 1) 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) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandler Collection.java:250) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.jav a:149) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.server.Server.handle(Server.java:349) at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441) at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConne ction.java:919) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51 ) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.jav a:586) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java :44) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598 ) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) at java.lang.Thread.run(Thread.java:701) |