2012-07-07 60 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