With JwChat, you will need to use either HTTPBinding (now called BOSH) or HTTPPolling (getting old).
The creator of JwChat has also created a HTTPBinding servlet, which you will need when using Wildfore (Openfire now has HTTPBinding incorporated).
Jabber HTTPBinding Servlet: http://zeank.in-berlin.de/jhb/
You will need a servlet container like Apache Tomcat to use it. Just set it up as per default and put the servlet in the webapps folder.
Tomcat: http://tomcat.apache.org/
Then you need to set up your webserver to do the proxying of JwChats requests. See the tutorial below. If using Wildfire + Tomcat, you need to point the proxy redirect to the /JHB/ in tomcat. Not really much difference, once it’s set up.
The HTTP_base is the address appendix in your webserver that will redirct to the BOSH service, for example “/JHB/”
There is also a tutorial to set up JwChat with Openfire:
http://chromus.kajigger.com/blog/2007/03/22/making-jwchat-work-with-openfire/
If using Openfire, read the gotcha in this blog entry:
http://zeank.in-berlin.de/2007/08/31/jsjac-v10-is-out/
Important note for OpenFire users:
In order to make JSJaC work with OpenFire please edit src/JSJaCHttpBindingConnection.js and set JSJACHBC_USE_BOSH_VER to false. Don’t forget to update jsjac.js by issuing a make build afterwards if you want to use the single include file.
Additionally you may have to make sure that JSJaC uses NON SASL authentication. To do this make sure to pass the property authtype=’nonsasl’ to your call to connect. E.g.
> oArgs.domain = 'example.org';
> oArgs.username = 'romeo';
> oArgs.resource = 'jsjac_simpleclient';
> oArgs.pass = 'topSecret';
> oArgs.authtype = 'nonsasl';
> con.connect(oArgs);