2013-05-07 3 views
6

새로운 구성 : 나는 당신이 말하는 것과 일치하도록 약간의 변경을했습니다. 지금은 최대 절전 모드-cfg.xml을 삭제 봄-servlet.xml 파일의 모든 conf의 한 :TransactionManager가 초기화 할 수 없습니다.

<jee:jndi-lookup id="ReferentielWebDevDataSource" 
    jndi-name="ReferentielWebDevDataSource" /> 

<bean id="sessionFactory" 
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
    <property name="dataSource" ref="ReferentielWebDevDataSource" /> 
    <property name="transaction.factory_class"> 
     <value>org.hibernate.transaction.JDBCTransactionFactory</value> 
    </property> 
    <!-- Disable the second-level cache --> 
    <property name="cache.provider_class"> 
     <value>org.hibernate.cache.NoCacheProvider</value> 
    </property> 
    <property name="hibernate.show_sql"> 
     <value>true</value> 
    </property> 
    <property name="dialect"> 
     <value>${jdbc.dialect}</value> 
    </property> 
    <property name="connection.driver_class"> 
     <value>${jdbc.driverClassName}</value> 
    </property> 
    <property name="connection.url"> 
     <value>${jdbc.databaseurl}</value> 
    </property> 
    <property name="connection.username"> 
     <value>${jdbc.username}</value> 
    </property> 
    <property name="connection.password"> 
     <value>${jdbc.password}</value> 
    </property> 

    <property name="current_session_context_class"> 
     <value>thread</value> 
    </property> 
</bean> 

<tx:annotation-driven transaction-manager="transactionManager" /> 

<bean id="transactionManager" 
    class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
    <property name="sessionFactory" ref="sessionFactory" /> 
</bean> 

이 내 자바 파일에서 올 수 있습니까?

오류는 다음과 같습니다

는 빈 클래스의

잘못된 속성 '거래'[org.springframework.orm.hibernate4.LocalSessionFactoryBean] : 콩 속성을 '거래'읽을 수 없습니다 또는 잘못된 게터 방법이 있습니다 수익을합니까 getter의 유형이 setter의 매개 변수 유형과 일치합니까?

OLD CONF : org.springframework.beans.factory.BeanCreationException : 여기 내 문제가 이름을 만드는 중 오류 콩 '의 transactionManager'의 ServletContext 자원에 정의 [/WEB-INF/spring-servlet.xml] : init 메소드의 호출이 실패했습니다. 상자의 예외가 java.lang.NoSuchMethodError입니다 : org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider() LORG/최대 절전 모드/서비스/JDBC/연결/SPI는/ConnectionProvider를

제대로 초기화 할 수 없습니다 트랜잭션 관리자 것, 돈

<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean" 
    p:packagesToScan="com.it" 
    p:dataSource-ref="ReferentielWebDevDataSource" 
    /> 
<bean id="transactionManager" 
    class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
    <property name="sessionFactory" ref="sessionFactory" /> 
</bean> 

몰라 내는 dataSource 또는 뭔가 다른에서왔다 경우 : 내 구성에

봄-servlet.xml에 관련이있는 경우 '는 t는 알고있다. 감사합니다,

편집 :

<bean id="sessionFactory" 
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
    <property name="packagesToScan" value="net.form" /> 
    <property name="dataSource" ref="ReferentielWebDevDataSource"></property> 
    <property name="hibernateProperties"> 
     <props> 
      <prop key="hibernate.dialect">org.hibernate.dialect.GenericDialect 
      </prop> 
      <prop key="hibernate.show_sql">true</prop> 
     </props> 
    </property> 
    <property name="annotatedClasses"> 
     <list> 
      <value>com.it.model.application</value> 
     </list> 
    </property> 
</bean> 

<bean id="transactionManager" 
    class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
    <property name="sessionFactory" ref="sessionFactory" /> 
</bean> 

내 데이터 소스 :

<hibernate-configuration> 
<session-factory> 
    <property name="dialect">org.hibernate.dialect.Oracle10gDialect</property> 
    <property name="connection.driver_class">oracle.jdbc.OracleDriver</property> 
    <property name="connection.url">MYURL</property> 
    <property name="connection.username">USERNAME</property> 
    <property name="connection.password">PASSWORD</property> 
    <property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property> 
    <property name="current_session_context_class">thread</property> 
    <!-- Disable the second-level cache --> 
    <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property> 
    <property name="hibernate.show_sql">true</property> 

    <mapping class="com.it.model.application"/> 
</session-factory> 

</hibernate-configuration> 

(와 : 내 최대 절전 모드-cfg.xml을에서

<jee:jndi-lookup id="ReferentielWebDevDataSource" jndi-name="ReferentielWebDevDataSource" /> 

나는이 있습니다 실제 URL, 사용자 이름 및 암호) 잉크는 내가 최대 절전 모드 구성 및 데이터 소스와 관련있어.

편집 2 스택 추적 :

HTTP ERROR 503 
Problem accessing /it-project/. Reason: 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring-servlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 

Caused by: 

org.eclipse.jetty.servlet.ServletHolder$1: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring-servlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.eclipse.jetty.servlet.ServletHolder.makeUnavailable(ServletHolder.java:445) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:498) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:293) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:739) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:254) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1238) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:683) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:480) 
    at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:172) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:275) 
    at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364) 
    at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:521) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring-servlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1486) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461) 
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:607) 
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) 
    at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:647) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:598) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:661) 
    at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:517) 
    at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:458) 
    at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:138) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:241) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:477) 
    ... 42 more 
Caused by: java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.springframework.orm.hibernate4.SessionFactoryUtils.getDataSource(SessionFactoryUtils.java:90) 
    at org.springframework.orm.hibernate4.HibernateTransactionManager.afterPropertiesSet(HibernateTransactionManager.java:252) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483) 
    ... 59 more 

Caused by: 

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring-servlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1486) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461) 
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:607) 
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) 
    at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:647) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:598) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:661) 
    at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:517) 
    at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:458) 
    at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:138) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:241) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:477) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:293) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:739) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:254) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1238) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:683) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:480) 
    at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:172) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:275) 
    at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364) 
    at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:521) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
Caused by: java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.springframework.orm.hibernate4.SessionFactoryUtils.getDataSource(SessionFactoryUtils.java:90) 
    at org.springframework.orm.hibernate4.HibernateTransactionManager.afterPropertiesSet(HibernateTransactionManager.java:252) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483) 
    ... 59 more 

Caused by: 

java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider()Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider; 
    at org.springframework.orm.hibernate4.SessionFactoryUtils.getDataSource(SessionFactoryUtils.java:90) 
    at org.springframework.orm.hibernate4.HibernateTransactionManager.afterPropertiesSet(HibernateTransactionManager.java:252) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461) 
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292) 
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:607) 
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479) 
    at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:647) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:598) 
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:661) 
    at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:517) 
    at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:458) 
    at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:138) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:241) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:477) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:293) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:739) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:254) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1238) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:683) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:480) 
    at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:256) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:172) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:229) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:275) 
    at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:511) 
    at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:364) 
    at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:521) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
+0

. 해당 설정에서 모든 것을 모두 spring config로 이동하십시오. –

답변

0

은 다른 게시물에서이 답변을 통해 이동 :

어디 SessionFactory를에 hibernate.dialect 손합니까? 보다 완벽한보기를 원하면 구성의 모든 부분이 최대 절전 모드로 전환되는 것을 보는 것이 도움이 될 것입니다. DataSource를 게시 할 수 있습니까? 그러나 지금까지 내가 말할 수있는 것은 hibernate.dialect가 필수 설정 속성이다. DataSource 외에도 이것은 매우 중요한 유일한 구성입니다.

<property name="hibernate.dialect">org.hibernate.dialect.GenericDialect</property> 

sessionFactory Bean에 추가하십시오.

+0

genericDialect를 사용하면 문제가 그대로 유지됩니다. 안타깝게도 – MinionKing

+0

최악의 경우 genericDialect를 알 수 없음 : 이름 [org.hibernate.dialect.GenericDialect]을 전략 [org.hibernate.dialect.Dialect]로 확인할 수 없음 – MinionKing

+0

모름 나는 oracle10gDialect를 사용하려고 시도했지만 작동하지 않습니다. – MinionKing

1

여러분의 설정을 자세히 살펴 보겠습니다.지금까지 하나의 bean을 컴파일 해 주셔서 감사합니다. 이렇게하면 분석하기가 더 쉽습니다. 당신이 JDBC 연결을위한 SessionFactory에 두 구성을 제공 한번만

: ^^

는보기 어긋 나서 thigns있다. 일단 데이터 소스로.

<property name="dataSource" ref="ReferentielWebDevDataSource" /> 

그리고 일단 SessionFactory에있는 속성을 설정하여

: 각각 다른 ConnectionProvider를 트리거하기 때문에

만이 중 하나가 필요
<property name="connection.driver_class"> 
     <value>${jdbc.driverClassName}</value> 
    </property> 
    <property name="connection.url"> 
     <value>${jdbc.databaseurl}</value> 
    </property> 
    <property name="connection.username"> 
     <value>${jdbc.username}</value> 
    </property> 
    <property name="connection.password"> 
     <value>${jdbc.password}</value> 
    </property> 

는 Hibernate에 의해 사용되는. (이것이 필연적으로 문제가되는지, 어떻게 우선 순위가 매겨 지는지는 모르지만 여전히 실패의 가능성이 있음)

그런 다음 두 번째 캐시를 비활성화하고 현재 컨텍스트를 설정합니다. 이것에는 그것의 이유가 있을지도 모르다, 시작하기를 위해 나는 가능한 한 간단하게 유지하고 그 (것)들을 내버려두기 위하여.

그리고

마침내 속성에서 설정 트랜잭션 관리자는이 설정에 필요하지 않습니다 :

<property name="transaction.factory_class"> 
      <value>org.hibernate.transaction.JDBCTransactionFactory</value> 
     </property> 

당신이 HibernatTransactionManager 콩 가지고 있기 때문에 :

<bean id="transactionManager" 
     class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
     <property name="sessionFactory" ref="sessionFactory" /> 
    </bean> 

그래서 다시 우리는 두 가지 구성 싸움을해야합니다. Spring Hibernate Configuration이 작동하는 방식은 DataSource가 sessionFactory에 주입되고 sessionFactory가 TransactionManager에 주입된다는 것이다.

<bean id="sessionFactory" 
      class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
      <property name="dataSource" ref="ReferentielWebDevDataSource" /> 

      <property name="hibernate.show_sql"> 
       <value>true</value> 
      </property> 
      <property name="dialect"> 
       <value>${jdbc.dialect}</value> 
      </property> 
    <property name="annotatedClasses"> 
     <list> 
      <value>com.it.model.application</value> 
     </list> 
    </property> 
     </bean> 

    <tx:annotation-driven transaction-manager="transactionManager" /> 
    <bean id="transactionManager" 
     class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
     <property name="sessionFactory" ref="sessionFactory" /> 
    </bean> 
2

나 최대 절전 모드 4.3.0이 오류가 발생합니다 : 필자는 설정을 단순화에

확인하고 여기에 모든 것을 끝낼 (I는 필요한 경우이 하나의 기준을 찾기 위해 시도 할 수 있습니다) .Beta1. 4.1.7.Final으로 다운 그레이드하면 문제가 해결되지만 이는 해결 방법 일뿐입니다.

12

당신은 이미 당신이 Hibernate를 다운 그레이드 할 때 원래 문제 (java.lang.NoSuchMethodError : org.hibernate.engine.spi.SessionFactoryImplementor.getConnectionProvider() Lorg/hibernate/service/jdbc/connections/spi/ConnectionProvider) 4.1.7. 최종.

이것은 최대 절전 모드 버전 4.3.0.Beta1이있는 Spring의 호환성 문제로 인해 https://jira.springsource.org/browse/SPR-10839 아래에보고되었습니다. 다음과 같이,이 문제에 대한 자신의 패치를 만들 수 있습니다하려면

은 : 프로젝트에서

  1. 를, 프로젝트의 클래스 경로 (버전 4.3.0을 사용하려면 최대 절전 모드 버전을 넣어. 베타 1 이상).

  2. spring-orm 소스의 패키지 org.springframework.orm.hibernate4에서 다음 소스 파일의 내용을 자신의 패키지에있는 프로젝트에 복사하십시오. 패키지 com.my.hibernate4.spring.fix : HibernateTransactionManager, SessionFactoryUtils, SpringFlushSynchronization, SpringSessionContextSpringSessionSynchronization.

  3. 변경 org.hibernate.engine.transaction.jta.platform.spi.JtaPlatform

  4. 변경에 org.hibernate.service.jta.platform.spi.JtaPlatform에서 클래스 JtaPlatform에 대한 SpringSessionContext에서 가져 오기 org.hibernate.engine.jdbc.connections.spi.ConnectionProvider

  5. 해결하려면 org.hibernate.service.jdbc.connections.spi.ConnectionProvider에서 클래스 ConnectionProvider에 대한 SessionFactoryUtils에서 가져 오기 패키지 com.my.hibernate4.spring.fix에있는 다른 모든 수입 문제; 이 다섯 가지 수업에서 자신의 고정 버전을 참조하십시오.

  6. 최대 절전 모드 구성에서 hibernate.current_session_context_class의 고정 된 버전 값을 SpringSessionContext으로 추가하십시오 (예 : 최대 절전 모드 구성). 당신의 봄 구성에서

  7. com.my.hibernate4.spring.fix.SpringSessionContext, 사용하는 트랜잭션 관리자로 고정 HibernateTransactionManager를을 구성 예 :

    <bean id="transactionManager" class="com.my.hibernate4.spring.fix.HibernateTransactionManager"> 
    <property name="sessionFactory" ref="sessionFactory" /> 
    

이 패치는 나를 위해 작동하지만, 나도 몰라 내 사용 사례가 밝히지 않은 모든 호환성 문제를 해결할 수 있습니다.

+1

Spring 3.x에서는 최대 4.2 절까지 최대 절전 모드를 사용할 수있다. – Ross

2

봄 컨텍스트 4.0.6.RELEASE가 지난 7 월에 릴리스되어 내 문제를 해결했습니다.

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-context</artifactId> 
<version>4.0.6.RELEASE</version> 
당신이 빈을 선언하고 있기 때문에 당신은`최대 절전 모드 - cfg.xml` 구성이 필요하지 않습니다

관련 문제