找不到表:JBoss 6启动时的用户

时间:2011-04-03 20:10:00

标签: mysql hibernate jpa jboss jboss6.x

我是JBoss,EJB3,hibernate和MySQL的新手。

我正在尝试编写一个示例代码来使用JPA和hibernate来持久保存bean。

我正在关注如何配置hibernate的http://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/第二章http://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/configuration.html#d0e215

在浏览了hibernate,MySQL和JBoss的配置指南后,我收到以下错误(当我设置<property name="hibernate.hbm2ddl.auto" value="validate"/>时),表明它无法连接/找到架构和/或表。

12:08:31,486未找到INFO [DatabaseMetadata]表:用户

如果删除上面的属性,那么JBoss在启动时不会抱怨,但是一旦我尝试在bean上调用persist(),就会抱怨该表不存在。

正如我理解指南,我不需要orm.xml或hibernate.cfg.xml,只要我在persistence.xml文件中指出所有必要的属性,这就是我所做的(试图保持简单和管理)。但是,经过数天的故障排除后,我无法成功保留bean。

这是我的persistence.xml文件:

<persistence xmlns="http://java.sun.com/xml/ns/persistence"

             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
             version="2.0">
    <persistence-unit name="ejb3-persistence-unit" transaction-type="JTA">
        <jta-data-source>java:/DefaultDS</jta-data-source>
        <class>com.sf.bean.UserBean</class>
        <properties>
            <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
            <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/HRIS"/>
            <property name="hibernate.connection.username" value="root"/>
            <property name="hibernate.connection.password" value="root"/>
            <!-- JDBC connection pool (use the built-in) -->
            <property name="hibernate.connection.pool_size" value="1"/>
            <!-- SQL dialect -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
            <!-- Enable Hibernate's automatic session context management -->
            <property name="hibernate.current_session_context_class" value="thread"/>
            <!-- Disable the second-level cache -->
            <property name="hibernate.cache.provider_class" value="org.hibernate.cache.NoCacheProvider"/>
            <!-- Echo all executed SQL to stdout -->
            <property name="hibernate.use_sql_comments" value="true"/>
            <property name="hibernate.show_sql" value="true"/>
            <!-- validate the database schema on startup -->
            <property name="hibernate.transaction.auto_close_session" value="true"/>
            <property name="hibernate.hbm2ddl.auto" value="validate"/>
        </properties>
    </persistence-unit>
</persistence>

,这是server.log的输出

    12:08:05,110 INFO  [AbstractServer] Starting: JBossAS [6.0.0.Final "Neo"]
    12:08:06,914 INFO  [ServerInfo] Java version: 1.6.0_24,Apple Inc.
    12:08:06,915 INFO  [ServerInfo] Java Runtime: Java(TM) SE Runtime Environment (build 1.6.0_24-b07-334-10M3326)
    12:08:06,915 INFO  [ServerInfo] Java VM: Java HotSpot(TM) 64-Bit Server VM 19.1-b02-334,Apple Inc.
    12:08:06,915 INFO  [ServerInfo] OS-System: Mac OS X 10.6.7,x86_64
    12:08:06,916 INFO  [ServerInfo] VM arguments: -Xms128m -Xmx512m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Xdebug -Xrunjdwp:transport=dt_socket,address=8989,suspend=n,server=y -Dhibernate.show_sql=true -Dprogram.name=run.sh -Djava.library.path=/Users/sfdeveloper/dev/jboss-6.0.0.Final/bin/native/lib64 -Djava.endorsed.dirs=/Users/sfdeveloper/dev/jboss-6.0.0.Final/lib/endorsed 
    12:08:06,978 INFO  [JMXKernel] Legacy JMX core initialized
    12:08:12,915 INFO  [AbstractServerConfig] JBoss Web Services - Stack CXF Server 3.4.1.GA
.............
............. {lines deleted}
.............
    12:08:26,628 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=DefaultDS' to JNDI name 'java:DefaultDS'
    12:08:26,866 INFO  [PersistenceUnitDeployment] Starting persistence unit persistence.unit:unitName=jboss-ejb3-timerservice-mk2.jar#timerdb
    12:08:27,133 INFO  [Version] Hibernate Commons Annotations 3.2.0.Final
    12:08:27,145 INFO  [Environment] Hibernate 3.6.0.Final
    **12:08:27,148 INFO  [Environment] hibernate.properties not found**
    12:08:27,152 INFO  [Environment] Bytecode provider name : javassist
    12:08:27,158 INFO  [Environment] using JDK 1.4 java.sql.Timestamp handling
    12:08:27,309 INFO  [Version] Hibernate EntityManager 3.6.0.Final
    12:08:27,342 INFO  [Ejb3Configuration] Processing PersistenceUnitInfo [
        name: timerdb
        ...]
    12:08:27,399 WARN  [Ejb3Configuration] Persistence provider caller does not implement the EJB3 spec correctly.PersistenceUnitInfo.getNewTempClassLoader() is null.
    12:08:27,495 INFO  [AnnotationBinder] Binding entity from annotated class: org.jboss.ejb3.timerservice.mk2.persistence.TimerEntity
    12:08:27,608 INFO  [EntityBinder] Bind entity org.jboss.ejb3.timerservice.mk2.persistence.TimerEntity on table timer
    12:08:28,433 INFO  [AnnotationBinder] Binding entity from annotated class: org.jboss.ejb3.timerservice.mk2.persistence.TimeoutMethod
    12:08:28,442 INFO  [EntityBinder] Bind entity org.jboss.ejb3.timerservice.mk2.persistence.TimeoutMethod on table timeout_method
    12:08:28,511 INFO  [AnnotationBinder] Binding entity from annotated class: org.jboss.ejb3.timerservice.mk2.persistence.CalendarTimerEntity
    12:08:28,513 INFO  [EntityBinder] Bind entity org.jboss.ejb3.timerservice.mk2.persistence.CalendarTimerEntity on table calendar_timer
    12:08:28,590 INFO  [Version] Hibernate Validator 3.1.0.GA
    12:08:28,670 INFO  [Version] Hibernate Validator 4.1.0.Final
    12:08:28,693 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:28,936 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:28,942 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:28,950 INFO  [HibernateSearchEventListenerRegister] Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
    12:08:28,963 INFO  [ConnectionProviderFactory] Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
    12:08:28,968 INFO  [InjectedDataSourceConnectionProvider] Using provided datasource
    12:08:28,973 INFO  [SettingsFactory] Database ->
           name : HSQL Database Engine
        version : 1.8.0
          major : 1
          minor : 8
    12:08:28,974 INFO  [SettingsFactory] Driver ->
           name : HSQL Database Engine Driver
        version : 1.8.0
          major : 1
          minor : 8
    12:08:29,048 INFO  [Dialect] Using dialect: org.hibernate.dialect.HSQLDialect
    12:08:29,077 INFO  [JdbcSupportLoader] Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
    12:08:29,105 INFO  [TransactionFactoryFactory] Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
    12:08:29,111 INFO  [TransactionManagerLookupFactory] instantiating TransactionManagerLookup: org.hibernate.transaction.JBossTransactionManagerLookup
    12:08:29,114 INFO  [TransactionManagerLookupFactory] instantiated TransactionManagerLookup
    12:08:29,114 INFO  [SettingsFactory] Automatic flush during beforeCompletion(): disabled
    12:08:29,114 INFO  [SettingsFactory] Automatic session close at end of transaction: disabled
    12:08:29,114 INFO  [SettingsFactory] JDBC batch size: 15
    12:08:29,114 INFO  [SettingsFactory] JDBC batch updates for versioned data: disabled
    12:08:29,116 INFO  [SettingsFactory] Scrollable result sets: enabled
    12:08:29,116 INFO  [SettingsFactory] JDBC3 getGeneratedKeys(): disabled
    12:08:29,116 INFO  [SettingsFactory] Connection release mode: auto
    12:08:29,118 INFO  [SettingsFactory] Default batch fetch size: 1
    12:08:29,118 INFO  [SettingsFactory] Generate SQL with comments: disabled
    12:08:29,118 INFO  [SettingsFactory] Order SQL updates by primary key: disabled
    12:08:29,118 INFO  [SettingsFactory] Order SQL inserts for batching: disabled
    12:08:29,119 INFO  [SettingsFactory] Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
    12:08:29,123 INFO  [ASTQueryTranslatorFactory] Using ASTQueryTranslatorFactory
    12:08:29,123 INFO  [SettingsFactory] Query language substitutions: {}
    12:08:29,123 INFO  [SettingsFactory] JPA-QL strict compliance: enabled
    12:08:29,123 INFO  [SettingsFactory] Second-level cache: enabled
    12:08:29,124 INFO  [SettingsFactory] Query cache: disabled
    12:08:29,125 INFO  [SettingsFactory] Cache region factory : org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge
    12:08:29,134 INFO  [RegionFactoryCacheProviderBridge] Cache provider: org.hibernate.cache.HashtableCacheProvider
    12:08:29,136 INFO  [SettingsFactory] Optimize cache for minimal puts: disabled
    12:08:29,136 INFO  [SettingsFactory] Cache region prefix: persistence.unit:unitName=jboss-ejb3-timerservice-mk2.jar#timerdb
    12:08:29,136 INFO  [SettingsFactory] Structured second-level cache entries: disabled
    12:08:29,149 INFO  [SettingsFactory] Echoing all SQL to stdout
    12:08:29,151 INFO  [SettingsFactory] Statistics: disabled
    12:08:29,151 INFO  [SettingsFactory] Deleted entity synthetic identifier rollback: disabled
    12:08:29,151 INFO  [SettingsFactory] Default entity-mode: pojo
    12:08:29,151 INFO  [SettingsFactory] Named query checking : enabled
    12:08:29,151 INFO  [SettingsFactory] Check Nullability in Core (should be disabled when Bean Validation is on): disabled
    12:08:29,188 INFO  [SessionFactoryImpl] building session factory
    12:08:29,520 INFO  [SessionFactoryObjectFactory] Factory name: persistence.unit:unitName=jboss-ejb3-timerservice-mk2.jar#timerdb
    12:08:29,523 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
    12:08:29,527 INFO  [SessionFactoryObjectFactory] Bound factory to JNDI name: persistence.unit:unitName=jboss-ejb3-timerservice-mk2.jar#timerdb
    12:08:29,527 WARN  [SessionFactoryObjectFactory] InitialContext did not implement EventContext
    12:08:29,537 INFO  [SchemaUpdate] Running hbm2ddl schema update
    12:08:29,538 INFO  [SchemaUpdate] fetching database metadata
    12:08:29,540 INFO  [SchemaUpdate] updating schema
    12:08:29,544 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:29,584 INFO  [TableMetadata] table found: PUBLIC.TIMEOUTMETHOD_METHODPARAMS
    12:08:29,584 INFO  [TableMetadata] columns: [methodparams, timeoutmethod_id]
    12:08:29,585 INFO  [TableMetadata] foreign keys: [fkf294c964b7de2d8a]
    12:08:29,585 INFO  [TableMetadata] indexes: [sys_idx_55]
    12:08:29,610 INFO  [TableMetadata] table found: PUBLIC.CALENDAR_TIMER
    12:08:29,610 INFO  [TableMetadata] columns: [scheduleexprtimezone, scheduleexprsecond, autotimer, scheduleexprstartdate, scheduleexprminute, scheduleexprhour, timeoutmethod_id, id, scheduleexprdayofmonth, scheduleexprenddate, scheduleexprmonth, scheduleexprdayofweek, scheduleexpryear]
    12:08:29,611 INFO  [TableMetadata] foreign keys: [fk2b697f04b7de2d8a, fk2b697f04e6e6ef93]
    12:08:29,611 INFO  [TableMetadata] indexes: [sys_idx_57, sys_idx_48, sys_idx_59]
    12:08:29,627 INFO  [TableMetadata] table found: PUBLIC.TIMEOUT_METHOD
    12:08:29,628 INFO  [TableMetadata] columns: [id, methodname, declaringclass]
    12:08:29,628 INFO  [TableMetadata] foreign keys: []
    12:08:29,628 INFO  [TableMetadata] indexes: [sys_idx_50]
    12:08:29,647 INFO  [TableMetadata] table found: PUBLIC.TIMER
    12:08:29,647 INFO  [TableMetadata] columns: [id, previousrun, initialdate, repeatinterval, timedobjectid, timerstate, nextdate, info]
    12:08:29,647 INFO  [TableMetadata] foreign keys: []
    12:08:29,648 INFO  [TableMetadata] indexes: [sys_idx_52]
    12:08:29,650 INFO  [SchemaUpdate] schema update complete
    12:08:29,656 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
    12:08:29,879 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI name 'java:JmsXA'
    12:08:29,920 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=MySQLDB' to JNDI name 'java:MySQLDB'
    12:08:30,140 INFO  [xnio] XNIO Version 2.1.0.CR2
    12:08:30,149 INFO  [nio] XNIO NIO Implementation Version 2.1.0.CR2
    12:08:30,408 INFO  [remoting] JBoss Remoting version 3.1.0.Beta2
    12:08:30,569 INFO  [TomcatDeployment] deploy, ctxPath=/
    12:08:30,661 INFO  [BeanInstantiatorDeployerBase] Installed org.jboss.ejb3.instantiator.impl.Ejb31SpecBeanInstantiator@7760116b into MC at org.jboss.ejb.bean.instantiator/Simple/Simple-server/UserServiceImpl
    12:08:30,672 WARN  [InterceptorInfoRepository] EJBTHREE-1852: InterceptorInfoRepository is deprecated
    12:08:31,216 INFO  [JBossASKernel] Created KernelDeployment for: Simple-server.jar
    12:08:31,220 INFO  [JBossASKernel] installing bean: jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3
    12:08:31,221 INFO  [JBossASKernel]   with dependencies:
    12:08:31,221 INFO  [JBossASKernel]   and demands:
    12:08:31,221 INFO  [JBossASKernel]  jboss.ejb:service=EJBTimerService; Required: Described
    12:08:31,221 INFO  [JBossASKernel]  jboss-injector:topLevelUnit=Simple.ear,unit=Simple-server.jar,bean=UserServiceImpl; Required: Described
    12:08:31,222 INFO  [JBossASKernel]  jboss-switchboard:appName=Simple,module=Simple-server,name=UserServiceImpl; Required: Create
    12:08:31,222 INFO  [JBossASKernel]  persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit; Required: Described
    12:08:31,222 INFO  [JBossASKernel]   and supplies:
    12:08:31,222 INFO  [JBossASKernel]  jndi:Simple/UserServiceImpl/local-com.sf.service.user.UserService
    12:08:31,222 INFO  [JBossASKernel]  jndi:UserServiceImpl
    12:08:31,222 INFO  [JBossASKernel]  jndi:Simple/UserServiceImpl/local
    12:08:31,222 INFO  [JBossASKernel]  Class:com.sf.service.user.UserService
    12:08:31,227 INFO  [JBossASKernel] Added bean(jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3) to KernelDeployment of: Simple-server.jar
    12:08:31,366 INFO  [PersistenceUnitDeployment] Starting persistence unit persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit
    12:08:31,368 INFO  [Ejb3Configuration] Processing PersistenceUnitInfo [
        name: ejb3-persistence-unit
        ...]
    12:08:31,369 WARN  [Ejb3Configuration] Persistence provider caller does not implement the EJB3 spec correctly.PersistenceUnitInfo.getNewTempClassLoader() is null.
    12:08:31,370 INFO  [AnnotationBinder] Binding entity from annotated class: com.sf.bean.UserBean
    12:08:31,370 INFO  [EntityBinder] Bind entity com.sf.bean.UserBean on table users
    12:08:31,379 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:31,386 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:31,389 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    12:08:31,405 INFO  [HibernateSearchEventListenerRegister] Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
    12:08:31,407 INFO  [ConnectionProviderFactory] Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
    12:08:31,407 INFO  [InjectedDataSourceConnectionProvider] Using provided datasource
    12:08:31,439 INFO  [SettingsFactory] Database ->
           name : HSQL Database Engine
        version : 1.8.0
          major : 1
          minor : 8
    12:08:31,440 INFO  [SettingsFactory] Driver ->
           name : HSQL Database Engine Driver
        version : 1.8.0
          major : 1
          minor : 8
    12:08:31,442 INFO  [Dialect] Using dialect: org.hibernate.dialect.MySQLDialect
    12:08:31,443 INFO  [JdbcSupportLoader] Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
    12:08:31,444 INFO  [TransactionFactoryFactory] Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
    12:08:31,444 INFO  [TransactionManagerLookupFactory] instantiating TransactionManagerLookup: org.hibernate.transaction.JBossTransactionManagerLookup
    12:08:31,445 INFO  [TransactionManagerLookupFactory] instantiated TransactionManagerLookup
    12:08:31,445 INFO  [SettingsFactory] Automatic flush during beforeCompletion(): disabled
    12:08:31,445 INFO  [SettingsFactory] Automatic session close at end of transaction: enabled
    12:08:31,445 INFO  [SettingsFactory] JDBC batch size: 15
    12:08:31,445 INFO  [SettingsFactory] JDBC batch updates for versioned data: disabled
    12:08:31,446 INFO  [SettingsFactory] Scrollable result sets: enabled
    12:08:31,446 INFO  [SettingsFactory] JDBC3 getGeneratedKeys(): disabled
    12:08:31,446 INFO  [SettingsFactory] Connection release mode: auto
    12:08:31,446 INFO  [SettingsFactory] Maximum outer join fetch depth: 2
    12:08:31,446 INFO  [SettingsFactory] Default batch fetch size: 1
    12:08:31,447 INFO  [SettingsFactory] Generate SQL with comments: enabled
    12:08:31,447 INFO  [SettingsFactory] Order SQL updates by primary key: disabled
    12:08:31,447 INFO  [SettingsFactory] Order SQL inserts for batching: disabled
    12:08:31,447 INFO  [SettingsFactory] Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
    12:08:31,448 INFO  [ASTQueryTranslatorFactory] Using ASTQueryTranslatorFactory
    12:08:31,448 INFO  [SettingsFactory] Query language substitutions: {}
    12:08:31,448 INFO  [SettingsFactory] JPA-QL strict compliance: enabled
    12:08:31,448 INFO  [SettingsFactory] Second-level cache: enabled
    12:08:31,449 INFO  [SettingsFactory] Query cache: disabled
    12:08:31,449 INFO  [SettingsFactory] Cache region factory : org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge
    12:08:31,449 INFO  [RegionFactoryCacheProviderBridge] Cache provider: org.hibernate.cache.NoCacheProvider
    12:08:31,452 INFO  [SettingsFactory] Optimize cache for minimal puts: disabled
    12:08:31,453 INFO  [SettingsFactory] Cache region prefix: persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit
    12:08:31,453 INFO  [SettingsFactory] Structured second-level cache entries: disabled
    12:08:31,453 INFO  [SettingsFactory] Echoing all SQL to stdout
    12:08:31,453 INFO  [SettingsFactory] Statistics: disabled
    12:08:31,454 INFO  [SettingsFactory] Deleted entity synthetic identifier rollback: disabled
    12:08:31,454 INFO  [SettingsFactory] Default entity-mode: pojo
    12:08:31,454 INFO  [SettingsFactory] Named query checking : enabled
    12:08:31,454 INFO  [SettingsFactory] Check Nullability in Core (should be disabled when Bean Validation is on): disabled
    12:08:31,461 INFO  [SessionFactoryImpl] building session factory
    12:08:31,472 INFO  [SessionFactoryObjectFactory] Factory name: persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit
    12:08:31,472 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
    12:08:31,475 INFO  [NamingHelper] Creating subcontext: persistence.unit:unitName=Simple.ear
    12:08:31,476 INFO  [SessionFactoryObjectFactory] Bound factory to JNDI name: persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit
    12:08:31,476 WARN  [SessionFactoryObjectFactory] InitialContext did not implement EventContext
    12:08:31,480 INFO  [SchemaValidator] Running schema validator
    12:08:31,480 INFO  [SchemaValidator] fetching database metadata
    12:08:31,482 INFO  [DefaultTraversableResolver] Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
    **12:08:31,486 INFO  [DatabaseMetadata] table not found: users
    12:08:31,488 ERROR [AbstractKernelController] Error installing to Start: name=persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit state=Create: javax.persistence.PersistenceException: [PersistenceUnit: ejb3-persistence-unit] Unable to build EntityManagerFactory**
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:911) [:3.6.0.Final]
        at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:74) [:3.6.0.Final]
        at org.jboss.jpa.builder.DefaultCEMFBuilder.build(DefaultCEMFBuilder.java:47) [:1.0.2-alpha-3]
        at org.jboss.as.jpa.scanner.HackCEMFBuilder.build(HackCEMFBuilder.java:49) [:6.0.0.Final]
        at org.jboss.jpa.deployment.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:275) [:1.0.2-alpha-3]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_24]
    ………..
        at org.jboss.bootstrap.impl.base.server.AbstractServer.startBootstraps(AbstractServer.java:827) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
        at org.jboss.bootstrap.impl.base.server.AbstractServer$StartServerTask.run(AbstractServer.java:417) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
        at java.lang.Thread.run(Thread.java:680) [:1.6.0_24]
    Caused by: org.hibernate.HibernateException: Missing table: users
        at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1310) [:3.6.0.Final]
        at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:139) [:3.6.0.Final]
        at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:376) [:3.6.0.Final]
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1842) [:3.6.0.Final]
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:902) [:3.6.0.Final]
        ... 79 more

    12:08:31,541 INFO  [service] Removing bootstrap log handlers
    12:08:31,645 ERROR [ProfileServiceBootstrap] Failed to load profile:: org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):

    DEPLOYMENTS MISSING DEPENDENCIES:
      Deployment "jboss-switchboard:appName=Simple,module=Simple-web" is missing the following dependencies:
        Dependency "jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3" (should be in state "Installed", but is actually in state "PreInstall")
      Deployment "jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3" is missing the following dependencies:
        Dependency "<UNKNOWN jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3>" (should be in state "Installed", but is actually in state "** UNRESOLVED Demands 'persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit' **")
      Deployment "jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3_endpoint" is missing the following dependencies:
        Dependency "jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3" (should be in state "Installed", but is actually in state "PreInstall")
      Deployment "jboss.web.deployment:war=/ejb3" is missing the following dependencies:
        Dependency "jboss-switchboard:appName=Simple,module=Simple-web" (should be in state "Installed", but is actually in state "Deploy")

    DEPLOYMENTS IN ERROR:
      Deployment "persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit" is in error due to the following reason(s): org.hibernate.HibernateException: Missing table: users
      Deployment "<UNKNOWN jboss.j2ee:ear=Simple.ear,jar=Simple-server.jar,name=UserServiceImpl,service=EJB3>" is in error due to the following reason(s): ** UNRESOLVED Demands 'persistence.unit:unitName=Simple.ear/Simple-server.jar#ejb3-persistence-unit' **

        at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1228) [:2.2.0.GA]
        at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:905) [:2.2.0.GA]
        at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.checkComplete(MainDeployerPlugin.java:87) [:6.0.0.Final]
        at org.jboss.profileservice.deployment.ProfileDeployerPluginRegistry.checkAllComplete(ProfileDeployerPluginRegistry.java:107) [:0.2.2]
        at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceBootstrap.start(BasicProfileServiceBootstrap.java:135) [:6.0.0.Final]
        at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceBootstrap.start(BasicProfileServiceBootstrap.java:56) [:6.0.0.Final]
        at org.jboss.bootstrap.impl.base.server.AbstractServer.startBootstraps(AbstractServer.java:827) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
        at org.jboss.bootstrap.impl.base.server.AbstractServer$StartServerTask.run(AbstractServer.java:417) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
        at java.lang.Thread.run(Thread.java:680) [:1.6.0_24]

    12:08:31,669 INFO  [org.apache.coyote.http11.Http11Protocol] Starting Coyote HTTP/1.1 on http-127.0.0.1-8080
    12:08:31,672 INFO  [org.apache.coyote.ajp.AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
    12:08:31,672 INFO  [org.jboss.bootstrap.impl.base.server.AbstractServer] JBossAS [6.0.0.Final "Neo"] Started in 26s:559ms

这是工作台的屏幕截图,显示了架构和表: enter image description here

非常感谢任何帮助, - 旧金山的开发人员。

1 个答案:

答案 0 :(得分:2)

  1. 您的数据库中没有表格
  2. 您已设置hibernate.hbm2ddl.auto=validate
  3. 这意味着异常是合乎逻辑的 - hibernate尝试查找您的实体是否具有相应的表,如果找不到,则报告问题

    要解决此问题,您有两种选择:

    1. 设置hibernate.hbm2ddl.auto=update。这将创建(和更新)数据库模式以匹配实体。
    2. 手动创建表格(不太适合,imo,但意见分为此处)