1、首先配置jwchat要具备的环境(我开发的环境)
tomcat6.0
jdk1.7
openfire3.9.3
2.在网上查找下在jwchat.war文件,将其解压后放到tomcat目录下的webapps下
3.下载xalan的xalan.jar,serializer.jar, xercesImpl.jar, xml-apis.jar放到webappsjwchatWEB-INFlib目录下即可。
4.修改配置文件
config.js
1 var SITENAME = "127.0.0.1";//127.0.0.1是你openfire服务器的名称 2 var BACKENDS = 3 [ 4 { 5 name:"Open Relay", 6 description:"HTTP Binding backend that allows connecting to any jabber server", 7 httpbase:"/jwchat/JHB/", 8 type:"binding", 9 default_server: SITENAME 10 } 11 ];
jsjac.js
在302行if(this.has_sasl)前加this.has_sasl=false;
web.xml
1 <servlet-mapping>
2 <servlet-name>Jabber HTTP Binding Servlet</servlet-name>
3 <url-pattern>/JHB/</url-pattern> <!--这里的修改主页是对应上面的config.js,如果config.js的httpbase配置是/jwchat/,那这里的就不用修改了 -->
4 </servlet-mapping>
(黄色表示要修改的部分)
5.启动tomcat ,访问http://l127.0.0.1:8080/jwchat/
(切记如果你的openfire服务器名称为127.0.0.1,访问jwchat时浏览器输入127.0.0.1,如果输入localhost则会报Authorization failed),我就是因为这个问题烦恼了很长一段时间。
<报错修改>
1.如果报Service unavailable
A.可能是openfire没有启动
B.config.js中的var SITENAME = "127.0.0.1";没有与openfire服务器名称相同
2修改openfire服务器名称
A.点击服务器,服务器管理器,编辑属性 修改服务器名称,修改完的服务器名称前有感叹号
B.出现叹号,我们要删除安全证书,点击服务器,服务器设置,服务器证书删掉这里的证书。
C.删除后,在当前页面会出现提示,然后按照提示点击相应的链接,重启服务器,然后登陆,再生成证书
D.然后生成完成后,手动重启openfire服务器,再次登陆发现警告没有了。
3. 在服务器端增加配置
xmpp.httpbind.client.requests.polling = 0
xmpp.httpbind.client.requests.wait = 10