Java EJB3.1JBoss7.1HibernateTroble

Java EJB3.1JBoss7.1HibernateTroble,java,eclipse,hibernate,jboss7.x,ejb-3.1,Java,Eclipse,Hibernate,Jboss7.x,Ejb 3.1,我在部署EJB3.1应用程序时遇到了一个问题。以下是堆栈跟踪: 12:37:05,027 WARN [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (MSC service thread 1-4) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: Could not

我在部署EJB3.1应用程序时遇到了一个问题。以下是堆栈跟踪:

 12:37:05,027 WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (MSC service thread 1-4) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: Could not create connection
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:277)
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:235)
at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:761)
at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:343)
at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:397)
at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:365)
at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:302)
at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:129)
at org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider.getConnection(InjectedDataSourceConnectionProvider.java:67) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcServicesImpl.java:253) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:119) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:71) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2270) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2266) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1735) [hibernate-core-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:889) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73) [hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:162) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.start(PersistenceUnitServiceImpl.java:85) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [classes.jar:1.6.0_65]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [classes.jar:1.6.0_65]
at java.lang.Thread.run(Thread.java:695) [classes.jar:1.6.0_65]
Caused by: java.sql.SQLException: java.lang.NoClassDefFoundError:  
com/mysql/jdbc/authentication/Sha256PasswordPlugin
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.Util.handleNewInstance(Util.java:435) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416) [mysql-connector-java-5.1.24-bin.jar:]
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317) [mysql-connector-java-5.1.24-bin.jar:]
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:249)
... 30 more

12:37:05,093 WARN  [org.hibernate.engine.jdbc.internal.JdbcServicesImpl] (MSC service thread 1-4) HHH000342: Could not obtain connection to query metadata : javax.resource.ResourceException: IJ000453: Unable to get managed connection for java:jboss/datasources/MyDB
12:37:05,095 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: Failed to start service jboss.persistenceunit."CarSharing.jar#MyDB": org.jboss.msc.service.StartException in service jboss.persistenceunit."CarSharing.jar#MyDB": Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1767) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [classes.jar:1.6.0_65]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [classes.jar:1.6.0_65]
 at java.lang.Thread.run(Thread.java:695) [classes.jar:1.6.0_65]
 Caused by: javax.persistence.PersistenceException: [PersistenceUnit: MyDB] Unable to 
build EntityManagerFactory
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:889)
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:162)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.start(PersistenceUnitServiceImpl.java:85)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
... 3 more


 Caused by: org.hibernate.HibernateException: Connection cannot be null when at   org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFa ctoryImpl.java:97)
at  >org.hibernate.service.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFacto >ryImpl.java:67)
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:172)
at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:71)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2270)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2266)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1735)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)
... 9 more

12:37:05,313 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870:                         D   Deploy of deployment "CarSharing.jar" was rolled back with failure message 
{"JBAS014671: Failed services" => {"jboss.persistenceunit.\"CarSharing.jar#MyDB\"" =>  "   org.jboss.msc.service.StartException in service  jboss.persistenceunit.\"CarSharing.jar#MyDB\": Failed to start service"}}
12:37:05027警告[org.jboss.jca.core.connectionmanager.pool.strategy.OnePool](MSC服务线程1-4)IJ000604:尝试获取新连接时可丢弃:null:javax.resource.ResourceException:无法创建连接
位于org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:277)
位于org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:235)
位于org.jboss.jca.core.connectionmanager.pool.mcp.semaphorraylistmanagedconnectionpool.createConnectionEventListener(semaphorraylistmanagedconnectionpool.java:761)
位于org.jboss.jca.core.connectionmanager.pool.mcp.semaphorraylistmanagedconnectionpool.getConnection(semaphorraylistmanagedconnectionpool.java:343)
位于org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:397)
位于org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:365)
位于org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:329)
位于org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:302)
位于org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:464)
位于org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:129)
在org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider.getConnection(InjectedDataSourceConnectionProvider.java:67)[hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.engine.jdbc.internal.jdbcservicesiml$ConnectionProviderJdbcConnectionAccess.obtainConnection(jdbcservicesiml.java:253)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.engine.jdbc.internal.jdbcservicesiml.configure(jdbcservicesiml.java:119)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:75)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:159)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:131)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:71)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2270)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2266)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1735)[hibernate-core-4.0.1.Final.jar:4.0.1.Final]
位于org.hibernate.ejb.EntityManagerFactoryImpl.(EntityManagerFactoryImpl.java:84)[hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.ejb.Ejb3Configuration.buildEntityManager工厂(Ejb3Configuration.java:904)[hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.ejb.Ejb3Configuration.buildEntityManager工厂(Ejb3Configuration.java:889)[hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
在org.hibernate.ejb.HibernatePersistence.createContainerEntityManager工厂(HibernatePersistence.java:73)[hibernate-entitymanager-4.0.1.Final.jar:4.0.1.Final]
在org.jboss.as.jpa.service.PersistenceUnitServiceImpl.CreateContainerentityManager工厂(PersistenceUnitServiceImpl.java:162)[jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
在org.jboss.as.jpa.service.PersistenceUnitServiceImpl.start(PersistenceUnitServiceImpl.java:85)[jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
位于org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
位于org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
位于java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)[classes.jar:1.6.0_65]
在java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)[classes.jar:1.6.0_65]
在java.lang.Thread.run(Thread.java:695)[classes.jar:1.6.0_65]
原因:java.sql.SQLException:java.lang.NoClassDefFoundError:
com/mysql/jdbc/authentication/Sha256PasswordPlugin
在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.Util.handleNewInstance(Util.java:435)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)[mysql-connector-java-5.1.24-bin.jar:]
在com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)[mysql-connector-java-5.1.24-bin.jar:]
位于org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:249)
... 30多
12:37:05093警告[org.hibernate.engine.jdbc.internal.jdbcservicesiml](MSC服务线程1-4)HH000342:无法获取查询元数据的连接:javax.resource.ResourceException:IJ000453:无法获取java的托管连接:jboss/datasources/MyDB
12:37:05095错误[org.jboss.msc.service.fail](msc服务线程1-4)MSC00001:无法启动服务jboss.persistenceunit。“CarSharing.jar#MyDB”:服务jboss.persistenceunit中的org.jboss.msc.service.StartException。“CarSharing.jar#MyDB”:无法启动服务
<datasource jta="false" jndi-name="java:jboss/datasources/MyDB" pool-name="MyDB" enabled="true" use-ccm="false">
                <connection-url>jdbc:mysql://localhost:3306/test</connection-url>
                <driver>mysql</driver>
                <security>
                    <user-name>root</user-name>
                    <password>root</password>
                </security>
                <validation>
                    <validate-on-match>false</validate-on-match>
                    <background-validation>false</background-validation>
                </validation>
                <statement>
                    <share-prepared-statements>false</share-prepared-statements>
                </statement>
            </datasource>
Caused by: java.sql.SQLException: java.lang.NoClassDefFoundError:  
com/mysql/jdbc/authentication/Sha256PasswordPlugin