openfire上——开发环境搭建

Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议 XMPP的前身是Jabber。

  您可以使用它轻易的构建高效率的即时通信服务器。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。

由于是采用开放的XMPP协议,您可以使用各种支持XMPP协议的IM客户端软件登陆服务。

更多底层参考http://blog.csdn.net/tyj1982/article/details/6686565

1、Myeclipse项目配置文件

首先介绍下MyEclipse中classpath等配置文件。

一般说来都会有.settings、.classpath、.project文件,

.project

从数据上看,我们可以了解到这些配置主要是描述工程的基本信息:

  1. 工程名<name></name>
  2. 工程注释描述<comment></comment>
  3. 运行时需要的额外Eclipse插件<natures></natures>,及其具体加载方式信息<buildSpec></buildSpec>

如果你在开发过程中向工程里面加入了很多额外的插件,则必然会导致你的Eclipse启动速度变慢。在这种情况下,你可以到这个文件里面去掉一些插件,不过这样一来你在开启那些关联文件的时候会加载那些插件。

.classpath

从数据上我们容易看出,上面描述了工程的依赖文件:

  1. 源文件的具体位置(kind="src")
  2. 运行的系统环境(kind="con") 可以自定义USER_LIBRARY<classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/required_lib"/>  其引用位置在%myeclipse_workspace%\.metadata\.plugins\org.eclipse.core.runtime\.settings\org.eclipse.jdt.core.prefs文件中    
    [html]  view plain  copy
      在CODE上查看代码片 派生到我的代码片
    1. org.eclipse.jdt.core.userLibrary.required_lib=<?xml version\="1.0" encoding\="UTF-8"?>\r\n  
    2. <userlibrary systemlibrary\="false" version\="2">\r\n\t<archive path\="/openfire_src/build/lib/dist/bcpg-jdk15on.jar"/>  
    3. \r\n\t<archive path\="/openfire_src/build/lib/dist/bcpkix-jdk15on.jar"/>\r\n\t  
    4. <archive path\="/openfire_src/build/lib/merge/jetty-jmx.jar"/>\r\n\t  
    5. <archive path\="/openfire_src/build/lib/merge/mina-integration-jmx.jar"/>\r\n</userlibrary>\r\n  
  3. 工程的library的具体位置信息(kind="lib")  <classpathentry kind="lib" path="src/web/WEB-INF/lib/dwr.jar"/>
  4. 在每个lib的xml子节点中,有关于它的其它配置信息(例如我配置的那个"javadoc_location")
  5. 项目的输出目录(kind="output")

总体上说这个文件就是配置整个工程的运行环境。

.settings

     里面存放各种插件的配置文件。

以上是简单介绍了Eclipse的Project相关的隐藏配置文件.

如颜色方案,详细参考:http://blog.csdn.net/etjnety/article/details/7846703/

2.Openfire开发环境部署

1、下载openfire、解压、改名

http://www.igniterealtime.org/downloads/index.jsp

附上一份所需jar   http://download.csdn.Net/detail/yongzhian/8149437

解压到Eclipse工作目录D:\javaSoftware\workplace_2013\openfire_src

 把openfire_src\build\eclipse目录下面的settings、classpath、project全部复制到openfire_src\ 目录下,然后把openfire_src\classpth、openfire_src\project、openfire_src\settings修改成Eclipse工程配置文件格式,重命名为在每个原有的名字上加上一个点,即.classpth、.project、.settings。注意:在windows下面不能直接重命名,需要在dos下面操作,即进入相应的目录执行,rename classpth .classpth即可,其它两个文件执行一样的操作。


2、导入到Eclipse,我用的是Myeclipse2013

如果导入的项目的lib与Libraries同一级别,可以复制到新的工作空间重新导入。(http://blog.csdn.net/lingxue1027/article/details/8522432)


3.修改错误

导入时候报错是因为少包bouncycastle.jar,导入后又会报少其他包,这里直接导入需要导入的包,放入新建文件夹build/lib/extended文件夹下


点击右键添加到path中并删除libraries中报错的bouncycastle.jar


导入项目中需要但未导入的jar。

此时报错的有SipManager:自动修复try catch和未实现的方法  SipCommRouter添加未实现的方法  CertificateManager 自动修复强制类型转换 eros.writeObject(csr.toASN1Primitive()); 直接修改为null   new GeneralNames(new GeneralName[]{othernameGN}); 修改为 new GeneralNames(othernameGN);

顺利的话应该就没有错误了

4、发布

Eclipse已经集成了Ant,所以我们只需要在 /openfire_src/build/build.xml 文件右击,选择Run As –> Ant Build 即可完成编译,编程成功后,会在/openfire_src/的跟目录下生成两个新的文件夹:target 和 work 。刷新项目即可看见

选择Run –> Run Configurations… 左边的Java Application,单击右键,选择 New:选中Main选项卡,点击Browse按钮选择 openfire_src 项目;单击Search 按钮输入:ServerStarter 自动过滤后选择:ServerStarter – org.jivesoftware.openfire.starter:

 选中Arguments选项卡,在VM arguments中填入:

-DopenfireHome="${workspace_loc:openfire_src}/target/openfire"

注意:项目路径 ${workspace_loc:openfire_src}

选中Common选项卡,将Debug和Run打钩(方便之后快速启动),然后点击apply,再点击run:

恭喜你,成功了!


其实系统是通过main方法启动的,故也可以用main方法运行


5、简易配置

直接默认,因为自带MySQL所以可以直接用,如果要连接Oracle数据库需要添加对应的jar,

标准数据库   数据库 URL:jdbc:mysql://10.6.21.37:3306/test?rewriteBatchedStatements=true

如果连接失败会报错

A connection to the database could not be made. View the error message by opening the "\logs\error.log" log file, then go back to fix the problem.

正常则:

缺少数据库方案 openfire. 尝试安装...
数据库更新成功

下一步初始设置则会建立对应的表


管理员账户则写邮箱即可,完成设置即可登录(用户名为admin)。



openfire具有应用层缓存 
数据库编码存在问题 
解决办法其实也很简单,首先要保证你为openfire创建的数据库编码是utf8的,建表语句如下:

create database openfire default character set utf8 default collate utf8_general_ci

当你原来就创建好数据库时,你可以用:

 alter database openfire default character set utf8 default collate utf8_general_ci;

其次,在初始化openfire数据库,即第一次配置openfire服务器时,在连接数据库那里的连接串要加入字符编码格式,必须在连接里增加UTF8的编码要求,连接字符串设置如下:

jdbc:mysql://127.0.0.1:3306/openfire?useUnicode=true&characterEncoding=utf8

如果已经安装完成,这个配置也是可以改动的,直接到openfire的安装目录下,找到conf/openfire.xml这样一个文件,打开找到如下的XML节,修改其中的serverURL即可

<database>
<defaultProvider>
<driver>com.mysql.jdbc.Driver</driver>
<serverURL>jdbc:mysql://127.0.0.1:3306/openfire?useUnicode=true&amp;characterEncoding=utf8</serverURL>

注意:由于&具有特殊含义,因此原&符号必须被转义为&amp;


6、客户端采用Spark

http://www.igniterealtime.org/downloads/index.jsp#spark

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值