2010-12-16 48 views
0

我有一個使用Spring 3.0 +最新版本的Hibernate(3.6)的J2EE應用程序,我想將它部署到JBoss 6 CR1上。在將spring3 + hibernate J2EE應用程序部署到JBoss 6時找不到jndi datasource

但我遇到了一個異常,說明在部署應用程序時未找到數據源。

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [javax.sql.DataSource] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {} 
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:920) [:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:789) [:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703) [:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:795) [:3.0.5.RELEASE] 
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:723) [:3.0.5.RELEASE] 
... 159 more 

我已經檢查了JBoss應用服務器和我在春天宣佈的數據源的JMX控制檯下java的命名空間。

我delcared在我的應用程序的context.xml數據源作爲

<jee:jndi-lookup id="dataSource" jndi-name="java:ThisIsMyDataSource"/> 

在我宣佈persistence.xml文件:

<persistence-unit name="persistenceUnit" transaction-type="JTA"> 
     <provider>org.hibernate.ejb.HibernatePersistence</provider> 
     <jta-data-source>java:/ThisIsMyDataSource</jta-data-source> 
</persistence-unit> 

一個叫ThisIsMyDataSource名稱的數據源是在部署文件夾of/jboss/server/default/deploy

它看起來像我的應用程序試圖尋找bean的javax.sql.datasource自動裝入其他類的const結構和失敗。

有誰知道如何解決這個問題?

回答

0

這似乎是一個錯字。你可以嘗試用

<jee:jndi-lookup id="dataSource" jndi-name="java:/ThisIsMyDataSource"/> 

,而不是

<jee:jndi-lookup id="dataSource" jndi-name="java:ThisIsMyDataSource"/> 
相關問題