2012-07-07 28 views
2

我正在将Glassfish的REST Web服务迁移到JBoss。数据库是SQLServer 2005.它在Glassfish下运行良好。当我部署.war文件下的JBoss AS 7.1.1它给出了这样的消息时,他的数据源配置错误这个来自JBoss的神秘故障消息是什么意思?

JBAS015870: Deploy of deployment "meteor.rest.war" was rolled back with failure message JBAS014750: Operation handler failed to complete 

一个人得到了这个消息。 JBoss管理控制台显示我的数据源,所以显然它没问题(尽管管理控制台无法告诉数据源是否工作)。

我也尝试使用相同的URL字符串手动连接JDBC调用,它的工作原理。

当JBoss的启动时,它给出了相关的数据源的消息:

JBAS014775: New missing/unsatisfied dependencies: 
    service jboss.jdbc-driver.sqljdbc (missing) dependents: [service jboss.data-source.java:jboss/Meteor] 

10:28:47,578 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015876: Starting deployment of "sqljdbc4.jar" 
10:28:47,656 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-7) JBAS010403: Deploying JDBC-compliant driver class com.microsoft.sqlserver.jdbc.SQLServerDriver (version 3.0) 

有其他人看到这个消息(第一个),并且这是什么意思?

回答

1

此错误是由于JBoss无法部署SQLServer类型4 JDBC驱动程序。当我将驱动程序部署为here所述的模块时,一切正常。

尽管JBoss文档建议通过部署而不是模块来安装JDBC 4型驱动程序,但JBoss也无法部署Postgresql 4型JDBC驱动程序。

我不知道更糟的是,JBoss文档还是JBoss的质量。如果他们无法修复他们的4类驱动程序的部署,他们应该改变他们的文档,说你不应该部署它们,而应该把它们安装成模块。

+0

出于好奇,驱动程序上的'jdbcCompliant()'返回什么?仅部署符合AFAIK标准的驱动程序。仅仅因为它是类型4并不意味着它是投诉。例如,MySQL驱动返回'false',尽管它是类型4,因为MySQL不完全支持SQL 92.参见[bug 62038](http://bugs.mysql.com/bug.php?id=62038) – 2012-07-08 08:53:19

相关问题