2010-11-15 17 views
1

J'ai déployé mon application sur tomcat 5.5 et l'EDI est éclipse avec le plugin myeclipse. lorsque je tente de démarrer le serveur tomcat je reçois l'erreur suivante:Le ressort ne parvient pas à rechercher la source de données configurée par jdbc

ERROR - ContextLoader.initWebApplicationContext(219) | Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/xaconfig/daoJPAConfig.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Name java:comp is not bound in this Context at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1412) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:546) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:272) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:196) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3669) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012) at org.apache.catalina.core.StandardHost.start(StandardHost.java:718) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442) at org.apache.catalina.core.StandardService.start(StandardService.java:450) at org.apache.catalina.core.StandardServer.start(StandardServer.java:683) at org.apache.catalina.startup.Catalina.start(Catalina.java:537) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409) Caused by: javax.naming.NameNotFoundException: Name java:comp is not bound in this Context at org.apache.naming.NamingContext.lookup(NamingContext.java:778) at org.apache.naming.NamingContext.lookup(NamingContext.java:161) at javax.naming.InitialContext.lookup(InitialContext.java:392) at org.springframework.jndi.JndiTemplate$1.doInContext(JndiTemplate.java:154) at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:87) at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:152) at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:178) at org.springframework.jndi.JndiLocatorSupport.lookup(JndiLocatorSupport.java:95) at org.springframework.jndi.JndiObjectLocator.lookup(JndiObjectLocator.java:105) at org.springframework.jndi.JndiObjectFactoryBean.lookupWithFallback(JndiObjectFactoryBean.java:201) at org.springframework.jndi.JndiObjectFactoryBean.afterPropertiesSet(JndiObjectFactoryBean.java:187) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) ... 27 more

J'ai configuré la source de données dans Apache Software Foundation \ Tomcat 5.5 \ conf comme:

<GlobalNamingResources> 
    <Environment 
     name="simpleValue" 
     type="java.lang.Integer" 
     value="30"/> 
    <Resource 
     name="jdbc/Paymentsdb" 
     type="javax.sql.DataSource" 
     maxActive="20" 
     maxIdle="10" 
     username="root" 
     maxWait="20000" 
     validationQuery="SELECT=1" 
     driverClassName="com.mysql.jdbc.Driver" 
     password="root" 
     url="jdbc\:mysql\://devserver\:3306/payhub"/> 
    <Resource 
     auth="Container" 
     description="User database that can be updated and saved" 
     name="UserDatabase" 
     type="org.apache.catalina.UserDatabase" 
     factory="org.apache.catalina.users.MemoryUserDatabaseFactory" 
     pathname="conf/tomcat-users.xml"/> 
    </GlobalNamingResources> 

et j'ai ajouté Apache Software Foundation \ Tomcat 5.5 \ conf \ context.xml la page et j'ajouté mon WEBINF \ web.xml

<resource-ref> 
    <description>PaymentsDatabase</description> 
    <res-ref-name>jdbc/Paymentsdb</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <res-auth>Container</res-auth> 
</resource-ref> 

J'utilise cadre de printemps, Hybernate + JPA . S'il vous plaît laissez-moi savoir, quel pourrait être le problème?

+0

où est le ressort cfg? –

Répondre

0

Je ne recommanderais pas de mettre cela dans la configuration globale pour Tomcat. Il n'y a aucune garantie que vous y aurez accès. Mieux vaut le mettre dans META-INF/context.xml.

Vous n'avez pas affiché votre configuration Spring pour la source de données JNDI. S'il vous plaît inclure cela.

nested exception is javax.naming.NameNotFoundException: Name java:comp is not bound in this Context

Cela ne devrait-il pas être java:comp/env?