由于北京那边的iTracker咯屁了且人手紧,于是放到成都这边的SDC来整。以至于我必须很快搭建起iTracker,便于工作。好,废话少说。下面是具体步骤:
准备工作,还是要先下载JBoss,在http://www.jboss.com/products/jbossas/downloads上去找,不过建议不要太高版本,以免造成搭建时候的不兼容。现在iTracker的版本是2.4.2,所以建议使用JBoss3.2.X,此版最高是3.2.7,可以使用。
然后,在www.itracker.org上,去下载最新的iTracker包。方便起见,下载express版的。链接到SourceForge后,可以看到Download itracker_2.4.2.express.zip,就下它了。这是带有可用HSQL(HyperSonic)脚本的版本,这样就不需要依赖于额外的数据库。当然,这样很快,但是可能在某些情况下不够用,官方建议使用更大的数据库来代替。嗯,MySQL是个好的选择,不过这次我们暂不用。
两个东西分别解压,放到C盘上待用。C:\JBoss以及C:\iTracker,当然其它的盘也可以。Follow以下操作:
1.打开C:\JBoss\JBoss-3.2.7\server\default\deploy\hsqldb-ds.xml,将联接URL设为
<connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url>
注意,这里一共有三种<connection-url>,在3.2.7中,默认是
<connection-url>jdbc:hsqldb:${jboss.server.data.dir}/hypersonic/localDB</connection-url> ,不用考虑,将其注释掉。
2.大约在这个文件的最底,有这样的一段:
<depends>jboss:service=Hypersonic,database=defaultDB</depends>
直接改为<depends>jboss:service=Hypersonic</depends>,接着,下面一段是我们需要的,不能被注释掉:
<mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=Hypersonic">
<attribute name="Port">1701</attribute>
<attribute name="Silent">true</attribute>
<attribute name="Database">default</attribute>
<attribute name="Trace">false</attribute>
<attribute name="No_system_exit">true</attribute>
</mbean>
因为我们使用基本于TCP连接的connection-url,下面一段
<mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=Hypersonic">
<attribute name="Database">localDB</attribute>
<attribute name="InProcessMode">true</attribute>
</mbean> 需要被注释掉,否则无法成功发布。
3.将这个文件存盘,并复制一份,相同目录下命名为C:\JBoss\JBoss-3.2.1\server\default\deploy\it-hsqldb-ds.xml。现在开始编辑这个新复制的文件。打开后,将
<jndi-name>DefaultDS</jndi-name>改为:
<jndi-name>ITrackerDS</jndi-name>
注意到,在这个文件中我们需要注释掉这段,不再使用:
<mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=Hypersonic">
<attribute name="Port">1701</attribute>
<attribute name="Silent">true</attribute>
<attribute name="Database">default</attribute>
<attribute name="Trace">false</attribute>
<attribute name="No_system_exit">true</attribute>
</mbean>
4.打开C:\JBoss\JBoss-3.2.7\server\default\conf\standardjbosscmp-jdbc.xml这个文件,并将
<datasource>java:/DefaultDS</datasource>修改为
<datasource>java:/ITrackerDS</datasource>,以匹配我们刚才的修改。
5.注意,如果你在使用Jboss 3.2.1,那么在布署的时候,可能会有一个bug。修改方法是,打开
C:\JBoss\JBoss-3.2.1\server\default\conf\jboss-service.xml,将
<attribute name="RecursiveSearch">False</attribute> 改为
<attribute name="RecursiveSearch">True</attribute>。
这个问题在JBoss-3.2.7中不存在,默认为True。
6.现在开始启动JBoss。在命令行下进入C:\JBoss\JBoss-3.2.7\bin,键入run.bat。保持这个控制台窗口打开,(你关了它就结束了JBOSS)观察。
这个时候,需要注意一下看控制台的输出提示,如果出现了异常,那么表示刚才的配置文件修改有问题。JBOSS不能成功的启动。回头检查一下刚才的修改是否正确,特别是在hsqldb-ds.xml下<mbean>...</mbean>不要存在有两个;在it-hsqldb-ds.xml下一个都不能有。如果害怕因为改错而备份了这个文件,则切记不能将备份的文件放在这个目录下面,最好是放远点,桌面、D盘,etc,都行。OK,检查了重启。成功的启动过程中,不会有任何异常出现。
7.这一步走好以后,打开你浏览器,键入http://localhost:8080/jmx-console,此时,应该可以看到欢迎画面,表示JBOSS启动成功。在下面找到service=Hypersonic链接。单击进入下一个页面,在靠近页面底的地方,找到startDatabaseManager链接,单击后,会弹出一个应用程序窗口。
在此应用程序窗口上单击File->Connect,选择HSQL Database Engine Server类型,使用jdbc:hsqldb:hsql://localhost:1701这个URL登录,角色为sa,默认没有密码。进去以后,选择File->Open Script选项,打开位于C:\ITracker\sql\hsql\install\的脚本create_itracker_core.sql文件,执行之,并选择Option->Commit进行确认提交。也可以将create_itracker_core.sql文件拷贝到SQL区执行,效果相同。
关于这一步,还可以在命令行下,使用java -cp C:\JBoss\JBoss-3.2.1\server\default\lib\hsqldb.jar org.hsqldb.util.ScriptTool -database default -url jdbc:hsqldb:hsql://localhost:1701: -log true -script C:\ITracker\sql\hsql\install\create_itracker_core.sql这个进行。不过这也许并不那么容易成功。
8.OK,进入布署的最后一步。把C:\ITracker\dist\itracker.ear文件,拷贝到C:\JBoss\JBoss-3.2.1\server\default\deploy下。拷贝完后,打开刚才启动JBOSS的控制台窗口,可以看到iTracker的发布过程。
到现在,iTracker已经完全发布好,在浏览器键入http://localhost:8080/itracker/index.jsp就可以看到登录页面了。使用admin/admin登录,以开始操作。