JiveJdon 3.9 Tomcat 配置启动报错

09-12-23 klcwt

今天配置了 最新版本的程序 jivejdon是 3.9 这个版本,结果出现了 如下错误

JTA Transaction Manager Lookup setting not found, auto detecting....

2009-12-23 16:18:22,593 [http-8080-1] ERROR com.jdon.jivejdon.dao.search.MessageSearchProxy - org.compass.core.config.ConfigurationException: Failed to create transaction factory class [org.compass.core.transaction.JTASyncTransactionFactory]; nested exception is org.compass.core.CompassException: Must register a transaction manager lookup using the compass.transaction.managerLookup property

org.compass.core.config.ConfigurationException: Failed to create transaction factory class [org.compass.core.transaction.JTASyncTransactionFactory]; nested exception is org.compass.core.CompassException: Must register a transaction manager lookup using the compass.transaction.managerLookup property

org.compass.core.CompassException: Must register a transaction manager lookup using the compass.transaction.managerLookup property

at org.compass.core.transaction.JTASyncTransactionFactory.doConfigure(JTASyncTransactionFactory.java:81)

at org.compass.core.transaction.AbstractTransactionFactory.configure(AbstractTransactionFactory.java:41)

at org.compass.core.transaction.TransactionFactoryFactory.createTransactionFactory(TransactionFactoryFactory.java:44)

at org.compass.core.impl.DefaultCompass.<init>(DefaultCompass.java:118)

at org.compass.core.impl.DefaultCompass.<init>(DefaultCompass.java:96)

at org.compass.core.impl.DefaultCompass.<init>(DefaultCompass.java:89)

at org.compass.core.config.CompassConfiguration.buildCompass(CompassConfiguration.java:191)

at com.jdon.jivejdon.dao.search.MessageSearchProxy.init(MessageSearchProxy.java:91)

at com.jdon.jivejdon.dao.search.MessageSearchProxy.<init>(MessageSearchProxy.java:35)

at com.jdon.jivejdon.dao.filter.MessageQueryDaoProxy.<init>(MessageQueryDaoProxy.java:45)

Hi,all,请问这个问题怎么解决,我是根据这里的官方文档来配置的。

Tomcat是从jdon下载来的,Webapp的版本是3.9,6.2

报错误的类是:MessageSearchProxy 的init()方法下的 compass = config.buildCompass(); 91句

补充后来我在Jboss下面部署也出现了这个错误

16:53:05,171 ERROR [STDERR] org.compass.core.config.ConfigurationException: Failed to create transaction factory class [org.compass.core.transaction.JTASyncTransactionFactory]; nested exception is org.compass.core.CompassException: Must register a transaction manager lookup using the compass.transaction.managerLookup property

16:53:05,171 ERROR [STDERR] org.compass.core.CompassException: Must register a transaction manager lookup using the compass.transaction.managerLookup property

1

请banq及时注意下这个问题,并给予解决。

还有要部署这个系统真的是不容易,有太多东西要配置,很容易出问题

这样对初学者来说 很不容易上手 ,会影响推广的。

[该贴被klcwt于2009-12-23 17:04修改过]

2
oojdon
2009-12-23 17:18

楼主,用tomcat就不能用JTA事务,而jivejdon的事务用的是JTA,你只要注释掉MessageSearchProxy的这一行

config.setSetting("compass.transaction.factory", "org.compass.core.transaction.JTASyncTransactionFactory");
<p>

以及代码中所有的类似如下的代码片段就可以了

TransactionManager tx = jtaTransactionUtil.getTransactionManager();
tx.begin();
tx.commit();
jtaTransactionUtil.rollback(tx);
<p>

不过你可以直接下载我们编译好的tomcat版,记得jdk用1.6,jivejdon下一步会向tomcat无缝运行,我们会做一个开关,可等等,呵呵。

[该贴被oojdon于2009-12-23 17:37修改过]

klcwt
2009-12-23 17:42

Hi, oojdon 非常感谢,

这边响应速度很快!

我目前还没有按照你的那种做法去修改部署到Tomcat的代码,

注意:后来我又部署到了Jboss的下面也是报这样的错误。

补充:我下的Tomcat Jboss都是Jdon的官网下的,不是独立下载,所以 jar包们和配置文件们都应该不会有问题!

还有jdk jre 都是 1.6的

等待你的答复 谢谢!

[该贴被klcwt于2009-12-23 17:42修改过]

[该贴被klcwt于2009-12-23 17:43修改过]

oojdon
2009-12-23 22:05

重新编译了最新代码

tomcat jivejdon3.9版地址

https://jdon.dev.java.net/files/documents/3703/144656/jivejdon_tomcat.rar

有问题贴错误日志

[该贴被oojdon于2009-12-23 22:07修改过]

xmuzyu
2009-12-23 22:40

还有注意一下Jar包放置的位置,与JTA事务关联的类最好放在容器的lib目录下,不要放在项目的目录下。比如jboss-j2ee.jar,jta.jar最好放在jboss的default/lib目录下。tomcat的话,最好也放在tomcat的lib目录下。

3Go 1 2 3 下一页