Authentication Error Openfire/JWChat HTTP-binding
Hello all,
I hope that I am not overlooking something too simple here, but after about one week of tapping the wall with my forehead, I decided that I need help (in one way or another). I have an Openfire Server (3.4.2) set up on a Debian server, and that is working fine, meaning that I can log in with Jabber clients, and the logs are 'clean', i.e. no spectacular errors about missing files, etc... I also have Apache 2.2 set up with PHP5, Perl and all the usual. I can verify that all of this is working fine, too. After a little testing of Openfire (great work, I must say) I decided that the finishing touch would be a web UI, or rather a jabber web client. The only decent one I have been able to find was JWChat (please point out a better one, if you have more of a clue than me!). I have set up the entire JWChat system in the way described in the README, meaning that mod_rewrite and so on are compiled into apache, and loaded. I can verify that this is working fine, too. I have enabled HTTP-binding in Openfire, and can also check that this is 'online' by visiting the respective URL's with a browser, and receiving the 'right errors'. I have edited the backend config in JWChat to suite my needs, and have even added the two values, required for using JWChat with Openfire to the Openfire server: xmpp.httpbind.client.requests.polling 0 xmpp.httpbind.client.requests.wait 10 I have also tried swapping these values around, changing them up and down, removing them, etc, etc... Now to the actual problem at hand: When I try to log in via JWchat, I will always receive an 'Authorization Failed' javascript messagebox, when JWChat launches the 'contact list' window. This is the server log from Openfire (debug): 2008.01.11 11:51:11 JettyLog: continuation {} 2008.01.11 11:51:11 JettyLog: resume continuation {} 2008.01.11 11:51:11 JettyLog: continuation still pending {} 2008.01.11 11:51:11 JettyLog: continuation {} 2008.01.11 11:51:11 JettyLog: EOF 2008.01.11 11:51:11 JettyLog: continuation {} 2008.01.11 11:51:11 SASLAuthentication: SaslException javax.security.sasl.SaslException: DIGEST-MD5: digest response format violation. Incompatible charset value: utf-8� at com.sun.security.sasl.digest.DigestMD5Server.validateClientResponse(DigestMD5Server.java:378) at com.sun.security.sasl.digest.DigestMD5Server.evaluateResponse(DigestMD5Server.java:226) at org.jivesoftware.openfire.net.SASLAuthentication.handle(SASLAuthentication.java:280) at org.jivesoftware.openfire.SessionPacketRouter.route(SessionPacketRouter.java:57) at org.jivesoftware.openfire.http.HttpSession.sendPendingPackets(HttpSession.java:430) at org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender.run(HttpSessionManager.java:311) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) 2008.01.11 11:51:11 JettyLog: resume continuation {} 2008.01.11 11:51:11 JettyLog: continuation still pending {} 2008.01.11 11:51:11 JettyLog: continuation {} 2008.01.11 11:51:13 JettyLog: EOF 2008.01.11 11:51:13 JettyLog: continuation {} Now, I have tried this is Firefox 2.0.0.x, Opera (latest, 9 I believe?), Internet Explorer 6 and even Netscape (latest). The error remains the same. Usually I would post some of my configs, but in this case, there are no 'user friendly' settings to define the charset used for this. The jsjac.js library (provided by JWChat) is where it is defined, and is not meant to be edited. Being an annoyed admin, of course I have tried changing the charset to ISO-8859-1, UTF-8 (with CAPS, even though this should not be required according to RFC2222(SASL) and RFC2831), ISO-8859, Unicode, US-ASCII, etc. I understand that this seems ridiculous, but I was wondering whether it might throw me a different error. In a way it does, in another way it doesn't: Incompatible charset value: utf-8� // is the error I get when using the 'default' UTF-8. Incompatible charset value: ISO-8859-1?� // is the error with the 8859 encoding. Note the 2 question marks behind it. It would appear that there are trailing characters sneaking in to the info parsed from the UI to the HTTP-binding backend. I must honestly admit, that I have no idea how to fix this, and I'm more or less running out of ideas and hair to pull out. The following text is a cut-out of the jsjac.js libbrary provided with JWChat: return false;};JSJaCConnection.prototype._doSASLAuthDigestMd5S1=function(req){this.oDbg.log(req.r.responseT ext,2);var doc=oCon._prepareResponse(req);if(!doc||doc.getElementsByTagName("challenge").length==0){this.oDbg.l og("challenge missing",1);oCon._handleEvent('onerror',JSJaCError('401','auth','not-authorized'));this.disconnect();}else{var challenge=atob(doc.getElementsByTagName("challenge").item(0).firstChild.nodeValue);this.oDbg.log("go t challenge: "+challenge,2);this._nonce=challenge.substring(challenge.indexOf("nonce=")+7);this._nonce=this._nonc e.substring(0,this._nonce.indexOf("\""));this.oDbg.log("nonce: "+this._nonce,2);if(this._nonce==''||this._nonce.indexOf('\"')!=-1){this.oDbg.log("nonce not valid, aborting",1);this.disconnect();return;} this._digest_uri="xmpp/";this._digest_uri+=this.domain;this._cnonce=cnonce(14);this._nc='00000001';var A1=str_md5(this.username+':'+this.domain+':'+this.pass)+':'+this._nonce+':'+this._cnonce;var A2='AUTHENTICATE:'+this._digest_uri;var response=hex_md5(hex_md5(A1)+':'+this._nonce+':'+this._nc+':'+ this._cnonce+':auth:'+hex_md5(A2));var rPlain='username="'+this.username+'",realm="'+this.domain+'",nonce="'+this._nonce+'",cnonce="'+this. _cnonce+'",nc="'+this._nc+'",qop=auth,digest-uri="'+this._digest_uri+'",response="'+response+'",charset=utf-8';this.oDbg.log("response: "+rPlain,2);this._sendRaw("<response xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>"+ binb2b64(str2binb(rPlain))+"</response>",'_doSASLAuthDigestMd5S2');}};JSJaCConnection.prototype._doSASLAuthDigestMd5S2=function(re q){this.oDbg.log(req.r.responseText,2);var doc=this._prepareResponse(req);if(doc.firstChild.nodeName=='failure'){if(doc.firstChild.xml) this.oDbg.log("auth error: "+doc.firstChild.xml,1);else this.oDbg.log("auth error",1);oCon._handleEvent('onerror',JSJaCError('401','auth','not-authorized'));this.disconnect();return;} I am not a javascript expert by any standard, but 'it looks fine to me(tm)'. Any pointers, suggestions, ideas, or recommendations for another frontend are more than welcome! If anybody wants more logs, dumps or configs, just let me know! kind regards PelliX Linux Kernel: 2.4.27-2-386 Openfire: 3.4.2 Apache: 2.2 JWChat: 1.0beta3 (yes, I know it's a beta, but it works for other people) JDK: 1.5.0_13 |
Well, I got 'down and dirty' and removed the SASL Layer from the setup by bastardising the jsjac.js library. After removing the the 'charset=...' directive from the connect string, I get a little further (I think):
This is the current debug log, and I keep getting some warn logs, too: The test user is called 'test' with a password 'test' to keep things easy ... :P Debug: 2008.01.11 19:09:07 JettyLog: continuation {} 2008.01.11 19:09:07 JettyLog: EOF 2008.01.11 19:09:07 JettyLog: EOF 2008.01.11 19:09:07 JettyLog: EOF 2008.01.11 19:09:07 JettyLog: EOF 2008.01.11 19:09:07 JettyLog: continuation {} 2008.01.11 19:09:08 JettyLog: EOF 2008.01.11 19:09:08 JettyLog: EOF 2008.01.11 19:09:08 JettyLog: EOF 2008.01.11 19:09:08 JettyLog: EOF 2008.01.11 19:09:08 JettyLog: EOF 2008.01.11 19:09:08 JettyLog: continuation {} 2008.01.11 19:09:23 JettyLog: EOF 2008.01.11 19:09:23 JettyLog: continuation still pending {} 2008.01.11 19:09:23 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: EOF 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: EOF 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: resume continuation {} 2008.01.11 19:09:25 JettyLog: continuation still pending {} 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: EOF 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 XMPPCallbackHandler: RealmCallback: atlas 2008.01.11 19:09:25 XMPPCallbackHandler: NameCallback: test 2008.01.11 19:09:25 XMPPCallbackHandler: PasswordCallback 2008.01.11 19:09:25 XMPPCallbackHandler: AuthorizeCallback 2008.01.11 19:09:25 AuthorizationManager: Trying Default Mapping.map(test) 2008.01.11 19:09:25 DefaultAuthorizationMapping: No realm found 2008.01.11 19:09:25 XMPPCallbackHandler: no username requested, using test 2008.01.11 19:09:25 AuthorizationManager: Trying Default Policy.authorize(test , test) 2008.01.11 19:09:25 DefaultAuthorizationPolicy: Checking authenID realm 2008.01.11 19:09:25 XMPPCallbackHandler: test authorized to test 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: resume continuation {} 2008.01.11 19:09:25 JettyLog: continuation still pending {} 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: EOF 2008.01.11 19:09:25 JettyLog: continuation {} 2008.01.11 19:09:25 JettyLog: EOF 2008.01.11 19:09:26 JettyLog: EOF 2008.01.11 19:09:26 JettyLog: EOF 2008.01.11 19:09:26 JettyLog: EOF 2008.01.11 19:09:26 JettyLog: EOF 2008.01.11 19:09:26 JettyLog: EOF 2008.01.11 19:09:27 JettyLog: EOF 2008.01.11 19:09:27 JettyLog: EOF 2008.01.11 19:09:27 JettyLog: EOF 2008.01.11 19:09:27 JettyLog: EOF and of course the warn log: 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:20 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:21 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:21 Error parsing user request. [127.0.0.1] 2008.01.11 19:07:21 Error parsing user request. [127.0.0.1] 2008.01.11 19:08:04 Error parsing user request. [127.0.0.1] What happens now, is that I get an 'Internal Server Error. Disconnected. Reconnect?' javascript messagebox. At least this one gives me options, hehe. I have this feeling I'm close, but no cigar... PelliX |
...and another issue bites the dust of the 'solved' stack on my (virtual) desk!
I got the thing running, and as usual feel compelled to explain how I did it, to save the hair on the heads of our future sys admins... In this case I will list the points one has to cover in order to achieve the working Openfire 3.4.2 running with JWChat 1.0beta3 setup. Get Openfire up and running, meaning that there are accounts for clients, you can log in with standalone clients, etc. Extract the JWChat zip/tar.gz to a directory in your webroot (usually /var/www/). Enable HTTP-binding, and the BOSH 1.6 support in the UI of Openfire. Make sure that you can access the JWChat folder via a regular URL to your webserver. Configure your httpd.conf (or */sites-enabled/000-default) to proxy '/http-bind/' to 'http://127.0.0.1:8080/http-bind/' (this is or course the default port for unsecure HTTP-binding. I advise setting up secure access later, when this is working) Now, check that this proxy re-direct is working (proxy module will need to be loaded, and if you use apache2.x you may wanna check the readme's on http://www.igniterealtime.org/community/) by visiting 'http://myweb.server/http-bind/'. You should be redirected to 'http://127.0.0.1:8080/http-bind', meaning your browser will be sent to 'http://myweb.server:8080/http-bind/' and you should receive an error from Jetty. When this is working, and you are an English speaking person (I ain't tested no other languages yet, and browser charsets could well play a role here) delete all the 'funky language files' from the jwchat dir in your webroot, so that only .html.html files and the .js scripts remain. (Yes, leave the images alone, as well.) Next add xmpp.httpbind.client.requests.polling 0 xmpp.httpbind.client.requests.wait 10 to your Openfire config, and you should be almost set to go. In my case I had to edit the jsjac.js library to get the thing working, due to a bug/limitation. If you have a newer release I recommend you try your setup out, without executing the next step: Edit jsjac.js and replace the instances of --> ",charset=utf-8' <-- with --> ",' <--. Just to explain that in a clearer way, delete the text charset=utf-8. OK, Mr Chatmaster, you should have a working install now. Don't forget to restart apache, and maybe openfire to be on the safe side, flush the cache of your browser, and you're good to go. regards PelliX PS: there is a typo that reads "instrunctions" instead of "instructions" when you perform a search in 'Open Chatrooms'. |
Hi,
I got the same issue, I've tried all you do; I always got "Error parsing user request. [127.0.0.1]" Here is my apache 2 virtualhost Code:
<VirtualHost *> And I've add xmpp.httpbind.client.requests.polling 0 xmpp.httpbind.client.requests.wait 10 I've also tryed to replace charset=utf-8 in the jsjac.js Have you got an idea ? Best regards |
Hello Poil,
I was looking into your issue, and there are a couple of little pointers I can give you, but it would be nice if you could maybe post the (relevant) logs from your Openfire server. Anyhow, you may wanna add an extra line to your 'httpd.conf' or '~/site-enabled/000-default' or what you are currently using for the apache config: your config: Quote:
Quote:
"ProxyPass http-bind/ http://127.0.0.1:8080/http-bind/" as well as "ProxyPass /http-bind/ http://127.0.0.1:8080/http-bind/" just to be on the safe side, and I also checked my config, and appear to have an 'AllowOverride All' directive in that section. You might wanna try this, too. You would appear to be using Apache2x, which requires the mod_proxy module (and I think mod_proxy_http) to be active in your apache config, I don't want to nag, but are you sure that the proxy redirect is working? I.e. when you visit http://your.server.i.p/http-bind/" you should be redirected to http://your.server.i.p:8080/http-bind and you should receive an error from the Jetty service (I think a good old '404', but I'm not quite sure on that one anymore). As for replacing the charset value in the jsjac library, it's a dirty hack, but it should work, IF you are using the exact same version. Now as I remember there are two references to utf-8 in the library, and I am more than willing to send you a copy of mine via email if you like. Also, you have the MultiViews directive configured, which the INSTALL does tell you to do. I also have this configured, but as you may have read in my previous posts, I deleted all non-US international files, and that worked for me. There have been some speculations that it could even be the encoding or language setting of the browser causing the failure in some cases. I used firefox 2 and IE6 to test all this, and never noticed any difference, even when changing the encoding settings in the browser. Could you maybe post those logs should all the above info not help? Cheers PelliX |
Hi Pellix
I find your tuto on the web and I think it's the best clear I found. But I'don't understand all (especialy your paragraphe on the proxy) and I don't success to make jwchat work with openfire... Can you post your httpd.conf complte file please ? In my research I found everything and it's opposite. For example, is the directory block in the virtualhost block or not ?? I have a probleme with the html too : the button "login" is disabled in the src file. I correct it but it's do nothing when I click on... In the other tuto, people tell to change some values in the conf.js and you don't... Is it normal ? Thank you for your help and sorry for my bad english, I'm french :) Bye william |
Hi wilouze,
I'll handle your English fine, considering that 'mon francais est tres penible; je suis anglais...'. I can understand that you are having some issues with the proxying of URL's, it's not the easiest of things to get done, when you're new to the apache config. Basically, to explain why this is required, this is the idea: You are running apache(2) (it seems like apache1, considering that you are using 'httpd.conf' and apache2 uses '$apachedir/sites-enabled/000-default') on port 80. Openfire requires a server capable of rendering JSP pages, such as Jetty (default) or Tomcat (my favorite, but I've never actually set up Openfire on it), which use a different port, so as not to conflict with apache. Now, apache will 'serve' the user with the JWChat GUI, icons, html, etc etc, but the actual 'login' data itself, for the presence status and events needs to be sent to Jetty, NOT apache. Hence, we want apache to understand (and redirect) traffic going to http://your.server.i.p/http-bind/ to ACTUALLY go to http://your.server.i.p:8080/http-bind/, so that Jetty 'catches' and handles this data, even though the user only knows about port 80 (default, apache). So, you can use the term 'redirect' instead of proxy for ease here. Please note, that you will need to load the right modules for this to work. In apache2 you need mod_proxy and mod_proxy_http, in apache1 I'm not sure, and I cannot guarantee that it will even work (you may wanna check this in the apache documentation, so `man 8 apache(2)`). As for the config, I am running apache2 for this setup, so my httpd.conf is empty, but this is the section in my /sites-enabled/jwchat file: Quote:
As for the 'login' button being disabled in the HTML, I find that rather strange... It could be a new build though, ours is running great, and I haven't really thought about updating it. I can send you a copy of ours via email, if you want. However, the fact that it was 'disabled' and still doesn't work, might point to a javascript issue in your browser. Note that IE7 and 8 have not been tested with this as far as I know, and I can verify that Mozilla Firefox 2, Netscape, Opera, Konqueror and IE6 (with NO security settings) work fine in our setup. I would personally recommend Firefox for testing this, as IE always has had quirks here and there, and Firefox will allow you troubleshoot more effectively and without constantly having to close the browser, delete temp files, and try again. Try the 'Webdeveloper Toolbar' for Firefox from www.chrispederick.com, it's a lifesaver! You also mentioned editing the conf.js file. I did edit the confIG.js file, and I assume that is what you mean, or they have renamed the file in the new build. The only thing I changed, was to disable (uncomment) all backends, except the one that I needed, and this is my backend config: Quote:
Again, if you need some of the files, I'd gladly send you them! However, if you want to troubleshoot this more on the forum, I would advise you to A) post what OS/Kernel/architecture your are using. B) the exact versions of the apps involved. C) anthing special about your setup D) what you have done to test whether it works, and how and finally, last but not least :) E) the LOGS where the error is described...! kind regards PelliX |
Hi
Yes you have right, I should start by presenting my configuration. My server is based on the kernel 2.6.23.16 but I'm not sure about the distribution (it could be a slakware). I have installed the Openfire 3.5 server and I try to connect the Jwchat 1.beta3 client to it. All my client are on separate machines (windows only at the moment) and my server has no graphical layer. For the login button it's ok now. It was probably because the file index.html was not correctly raccorded to others. I guess my main issues come from the redirecting proxy. I can open the index page of jwchat but when I'm logg on I have a message "service unavailable". In your apache config file, how do you introduce your virtualhost block ? Is it like this : <VirtualHost *> ? In my case, the RewriteRule should not be with my server address instead of localhost ? (my clients are not on the server) In your config.js what do you put for "var SITENAME" ? localhost ? Is that ok for me too or I put my server address ? A last question :) when you kick http://localhost:8080/ (192.168.0.254:8080 for me), what do you open ? For me it's the apache/tomcat administration page. And when you have the redirect rules installed, what do you have ? When I kick http://192.168.0.254:8080/http-bind/ in my web browser, I have an error 404 from Apache/Tomcat. Else if I don't precise the port number (:8080) in the address, I have nothing... For the log files, I don't learn to use them (it's my first job and I never had to use logs at school...) so can you tell me what log do you want to see ? I guessed that it would be in the jwchat log but I don't have logs for jwchat ! Since now I test all serious tuto I founded on the web but it doesn't work yet and it's make me crasy ! I tried my luck on your forum, because I found your explications clear (but it's not enough for me finaly ;)) Thank you for your help, I'm tourning in circle :| Bye william |
Hi there William,
'Service Unavailable' would mean that there is indeed no communication or only one-way communication between the frontend and the backend. I'm guessing that it is the proxy redirect that is at fault, too. As for your VirtualHost settings, yes '<VirtualHost *>' is the default one, meaning it will listen on 'all'. In your post, your inquired about using the localhost or the server address. It is imperative that is set to the localhost, because that is where the 'connection' need to take place, and if I were for instance to go to http://my.jabber.server.address/http-bind/ it redirects me to http://my.jabber.server.address:8080/http-bind/, NOT http://localhost:8080/http-bind (which would of course not work, for obvious reasons, as you have pointed out). The 'var SITENAME' must be set to the name that you gave the jabber server (I think by default it uses the hostname). Mine here at home is called 'redhat' after the OS, that it was initially running on. So the JID's xxxx@redhat, and my config has the line Quote:
If using a console try `cat /var/log/error.log | tail -10` which will give you the last ten lines of the errorlog. In this case I would also recommend that you double check that the correct modules are loaded, and that the redirect is at least redirecting your browser. To test the proxy redirect, just add a directive such as 'RewriteRule /mickey/ http://localhost/donald/ [P]', so that when you go to http://thatserver/mickey you should be 'bounced' to /donald/ instead. (Excuse the Disney tainted examples... /foo/ and /bar/ should work, too ;) ). Don't forget to restart apache of course, and please check what version it is, as all these settings are version dependent, and some modules are simply not available in all versions. As for your OS version try `uname -a` which should tell you exactly what you are running. Check what port Openfire is serving it's WebUI on, and access it. You haven't mentioned whether you have actually performed the steps in UI that are required for this to work, i.e. add Quote:
By the way, you seem to be using Tomcat, I'm assuming 5.5.23 or 6. Could you verify the version, and also check what Java you have installed (`java --v` or `java --version`)? Like I said before, I never did this with Tomcat, but the apache, JWChat and Openfire setup shouldn't be any different, really. If you want, you can give me your email address, and we can handle this via IM(MSN) or email. regards PelliX PS: I decided to update my server here at home, from Openfire 3.4.2 to 3.5.1 and JWChat still works great. Logical, but one worry less :) |
Sorry you surprised me by your rapidity ;)
I'm ok for the var sitename I try your test on the redirection but it doesn't work :confused: In fact the url is transformed but the browser don't find the file I demand... Quote:
Quote:
My kernel detail : Quote:
Quote:
Quote:
The tomcat version : (http://192.168.0.254:8080) Quote:
Quote:
Openfire warning : Quote:
the last error was the april 23th so I don't copy the logs (there are only java error into) Apache access.log Quote:
Quote:
|
Yes ! guess what I discover in read the error log file ?
I have a mistake in the rewrite rule : the browser was searching the directory index.html/ and necessarily it can't find it ! Now I change my httpd to : Quote:
Thank you, it's a good progress ;) I forget to give you my email... Can you send me a message on forum@mailbidon.com (it works :D) ? My email address contains my personnal name and surname :rolleyes: and I don't want to expose it on a forum. I will answer you on my true address in the night ;) I will search again a little but my day of work is finish soon and I could not access to the server until monday but we can chat in the week end, I will be happy to speak with you ;) Bye bye and thank you very much for your help william |
Maybe a last question before I go :)
For jwchat, I have to redirect http-bind/, isn't it ? But where is this directory ? I didn't find it :confused: the log files : Quote:
Quote:
Bye william |
Hi,
Thanks for the compliment on the rapidity; but then again, before I became an admin professionally, I did customer support for some years, so I guess it's a habit that stuck! Good job on the redirect, this means that the modules are loaded and working. Your apache version (2.2.8) is well up to date to support this. As for Tomcat, I'm not quite sure, but I'm assuming it should be OK, even though it is no longer considered a 'production version', and the 'officially employed' versions are 5.5.23 and 6.0. You appear to have two Java versions installed, I guess that Openfire knows where to find the standard one, but it might be worth checking which version is preferred by your OS (Debian uses `update-alternatives`, I don't know what you have to use). As for the /http-bind/, that is correct, and when I open my my browser and point it to http://my.openfire.server.here:8080/http-bind/, I receive: Quote:
Quote:
regards PelliX |
Hey guys,
I have been trying to get same jwchat openfire integration working for quite sometime. I was following your post and had similar set of issues as mentioned above. Now I am struck at the Quote:
|
Hi sachinsinghal01,
First of all, I would like to confirm whether you are using JWChat with Openfire? Assuming yes, and you're trying to implement the HTTP-binding, then it would appear that you are either opening the 'wrong URL' i.e. the HTTP-bind port, or your Apache server is incorrectly proxying/redirecting. The 400 BAD REQUEST error in itself does not point to a server failure, but merely to the fact that your browser did not supply a "WELL SHAPED REQUEST". The HTTP-bind port waits for a client to start communicating with it over HTTP, it is not serving (much) static content. Could you maybe post your Apache config** for the JWChat application and also, if you happen to have seperate logging enabled for the JWChat section (as described above somewhere) then post these logs aswell. What happens when you try to log into JWChat? One a last note: I recently helped a friend of mine perform a clean install of the latest Openfire build 3.5.1, and I noticed that quite some options were disabled by default that were fully active in previous versions, so it may be worthwhile to run through the config (WebUI, Server -> System Properties and Server -> Server Settings). kind regards PelliX **note: I'm assuming that you are using Apache2 as the regular webserver for JWChat. If you're using something else (including Apache1.x) please mention exactly what version and platform you're running as you'll need proxying, something that not all webservers handle equally well. |
All times are GMT -5. The time now is 08:24 PM. |