2011-02-12 81 views
3

我一直在努力让James Mail Server在64位Slackware 13.1上与PostgreSQL一起工作。 64位的linux和64位的java下的驱动程序是否有任何已知的问题?PostgreSQL 9.0 JDBC驱动程序与64位Java一起工作良好吗?

我有同样的服务器在PostgreSQL 9.0上再次运行在32位Slackware上。

有谁知道可能是什么问题?

编辑:解决这个问题的一些详细信息... 当我停止通过./bin/phoenix停止詹姆斯邮件服务器我得到这个在日志中:

James Mail Server 2.3.2 
Remote Manager Service started plain:4555 
POP3 Service started plain:110 
SMTP Service started plain:25 
NNTP Service started plain:119 
FetchMail Disabled 
JVM exiting abnormally. Shutting down Phoenix. 
org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleException: Component named "thread-manager" failed to pass through the Destruction stage. (Reason: java.lang.IllegalThreadStateException). 
at org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.fail(LifecycleHelper.java:354) 
at org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.shutdown(LifecycleHelper.java:288) 
at org.apache.avalon.phoenix.components.application.DefaultApplication.shutdown(DefaultApplication.java:566) 
at org.apache.avalon.phoenix.components.application.DefaultApplication.doRunPhase(DefaultApplication.java:482) 
at org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase(DefaultApplication.java:409) 
at org.apache.avalon.phoenix.components.application.DefaultApplication.stop(DefaultApplication.java:233) 
at org.apache.avalon.framework.container.ContainerUtil.stop(ContainerUtil.java:292) 
at org.apache.avalon.framework.container.ContainerUtil.shutdown(ContainerUtil.java:66) 
at org.apache.avalon.phoenix.components.kernel.DefaultKernel.shutdown(DefaultKernel.java:346) 
at org.apache.avalon.phoenix.components.kernel.DefaultKernel.removeApplication(DefaultKernel.java:455) 
at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.undeploy(DefaultDeployer.java:244) 
at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.dispose(DefaultDeployer.java:154) 
at org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUtil.java:306) 
at org.apache.avalon.framework.container.ContainerUtil.shutdown(ContainerUtil.java:67) 
at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.shutdownComponents(DefaultEmbeddor.java:598) 
at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.dispose(DefaultEmbeddor.java:342) 
at org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUtil.java:306) 
at org.apache.avalon.framework.container.ContainerUtil.shutdown(ContainerUtil.java:67) 
at org.apache.avalon.phoenix.frontends.CLIMain.shutdown(CLIMain.java:326) 
at org.apache.avalon.phoenix.frontends.CLIMain.forceShutdown(CLIMain.java:295) 
at org.apache.avalon.phoenix.frontends.ShutdownHook.run(CLIMain.java:386) 
Caused by: java.lang.IllegalThreadStateException 
at java.lang.ThreadGroup.destroy(ThreadGroup.java:754) 
at org.apache.avalon.excalibur.thread.impl.DefaultThreadPool.dispose(DefaultThreadPool.java:76) 
at org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUtil.java:306) 
at org.apache.avalon.cornerstone.blocks.threads.AbstractThreadManager.dispose(AbstractThreadManager.java:69) 
at org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUtil.java:306) 
at org.apache.avalon.phoenix.containerkit.lifecycle.LifecycleHelper.shutdown(LifecycleHelper.java:274) 
... 19 more 
STOPPED Sun Feb 13 00:01:37 EET 2011 

当我启动服务器,一切开始很好,日志说詹姆斯已经添加了文件和数据库存储库,但它不会在数据库中创建表。如果它创建表格,它不会在里面插入任何东西。我确定我设置的用户/密码是正确的,用户可以写入数据库(手动测试)。 我正在使用9.0-801 JDBC 4和jdk1.6.0_23x64。

希望这有助于解决问题。

+0

您需要包含更多详细信息。你有什么问题?你有什么尝试? – jzd 2011-02-13 02:20:53

+0

为什么这是PostgreSQL驱动程序问题? – Daniel 2011-02-13 14:37:32

回答

2

PostgreSQL JDBC驱动程序是用纯Java编写的,所以它甚至不知道32位和64位平台之间的区别。这不太可能是这个问题。该驱动程序在64位主机上使用非常广泛。

0

彼得在主题问题上回答。

关于您的堆栈跟踪: 的根本原因是java.lang.IllegalThreadStateException例外,只有在下列情况下抛出:

if (destroyed || (nthreads > 0)) { 
    throw new IllegalThreadStateException(); 
} 

这意味着你已经被破坏,或没有真正停止。

我看到游泳池在excalibur处理了两次。这意味着你总会停下来之后会有这样的信息。