Bug 1031694

Summary: hibernate-entitymanager is missing org/hibernate/jpa/internal/EntityManagerMessageLogger_$logger.class
Product: [Fedora] Fedora Reporter: Marek Goldmann <mgoldman>
Component: hibernateAssignee: Marek Goldmann <mgoldman>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: java-sig-commits, puntogil
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: hibernate-4.3.0-0.6.Beta4.fc20 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-14 03:38:23 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Marek Goldmann 2013-11-18 14:51:30 UTC
Description of problem:

When deploying a sample application - WildFly i throwing this error:

14:44:15,801 INFO  [org.jboss.as.jpa] (MSC service thread 1-7) JBAS011401: Read persistence.xml for primary
14:44:15,889 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010400: Bound data source [java:jboss/datasources/KitchensinkQuickstartDS]
14:44:15,891 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 14) JBAS011409: Starting Persistence Unit (phase 1 of 2) Service 'jboss-as-kitchensink.war#primary'
14:44:15,906 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 14) MSC000001: Failed to start service jboss.persistenceunit."jboss-as-kitchensink.war#primary".__FIRST_PHASE__: org.jboss.msc.service.StartException in service jboss.persistenceunit."jboss-as-kitchensink.war#primary".__FIRST_PHASE__: java.lang.ExceptionInInitializerError
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl$1$1.run(PhaseOnePersistenceUnitServiceImpl.java:120)
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl$1$1.run(PhaseOnePersistenceUnitServiceImpl.java:102)
        at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_45]
        at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:463) [wildfly-security-manager.jar:1.0.0.Beta3]
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl$1.run(PhaseOnePersistenceUnitServiceImpl.java:129)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]
        at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads.jar:2.1.0.Final]
Caused by: java.lang.ExceptionInInitializerError
        at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:43)
        at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:55)
        at org.jboss.as.jpa.hibernate4.TwoPhaseBootstrapImpl.<init>(TwoPhaseBootstrapImpl.java:38)
        at org.jboss.as.jpa.hibernate4.HibernatePersistenceProviderAdaptor.getBootstrap(HibernatePersistenceProviderAdaptor.java:134)
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl.createContainerEntityManagerFactoryBuilder(PhaseOnePersistenceUnitServiceImpl.java:233)
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl.access$800(PhaseOnePersistenceUnitServiceImpl.java:59)
        at org.jboss.as.jpa.service.PhaseOnePersistenceUnitServiceImpl$1$1.run(PhaseOnePersistenceUnitServiceImpl.java:117)
        ... 8 more
Caused by: java.lang.IllegalArgumentException: Invalid logger interface org.hibernate.jpa.internal.EntityManagerMessageLogger (implementation not found in ModuleClassLoader for Module "org.hibernate:main" from local module loader @2e44dfad (finder: local module finder @2bb8ee96 (roots: /usr/share/wildfly/modules,/usr/share/wildfly/modules/system/layers/base)))
        at org.jboss.logging.Logger$1.run(Logger.java:2254) [jboss-logging.jar:3.1.3.GA]
        at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_45]
        at org.jboss.logging.Logger.getMessageLogger(Logger.java:2227) [jboss-logging.jar:3.1.3.GA]
        at org.jboss.logging.Logger.getMessageLogger(Logger.java:2214) [jboss-logging.jar:3.1.3.GA]
        at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<clinit>(EntityManagerFactoryBuilderImpl.java:120)
        ... 15 more

14:44:15,916 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 2) JBAS014613: Operation ("deploy") failed - address: ([("deployment" => "jboss-as-kitchensink.war")]) - failure description: {"JBAS014671: Failed services" => {"jboss.persistenceunit.\"jboss-as-kitchensink.war#primary\".__FIRST_PHASE__" => "org.jboss.msc.service.StartException in service jboss.persistenceunit.\"jboss-as-kitchensink.war#primary\".__FIRST_PHASE__: java.lang.ExceptionInInitializerError
    Caused by: java.lang.ExceptionInInitializerError
    Caused by: java.lang.IllegalArgumentException: Invalid logger interface org.hibernate.jpa.internal.EntityManagerMessageLogger (implementation not found in ModuleClassLoader for Module \"org.hibernate:main\" from local module loader @2e44dfad (finder: local module finder @2bb8ee96 (roots: /usr/share/wildfly/modules,/usr/share/wildfly/modules/system/layers/base)))"}}
14:44:15,918 ERROR [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "jboss-as-kitchensink.war" was rolled back with the following failure message: 
{"JBAS014671: Failed services" => {"jboss.persistenceunit.\"jboss-as-kitchensink.war#primary\".__FIRST_PHASE__" => "org.jboss.msc.service.StartException in service jboss.persistenceunit.\"jboss-as-kitchensink.war#primary\".__FIRST_PHASE__: java.lang.ExceptionInInitializerError
    Caused by: java.lang.ExceptionInInitializerError
    Caused by: java.lang.IllegalArgumentException: Invalid logger interface org.hibernate.jpa.internal.EntityManagerMessageLogger (implementation not found in ModuleClassLoader for Module \"org.hibernate:main\" from local module loader @2e44dfad (finder: local module finder @2bb8ee96 (roots: /usr/share/wildfly/modules,/usr/share/wildfly/modules/system/layers/base)))"}}
14:44:15,923 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010409: Unbound data source [java:jboss/datasources/KitchensinkQuickstartDS]
14:44:15,928 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) JBAS015877: Stopped deployment jboss-as-kitchensink.war (runtime-name: jboss-as-kitchensink.war) in 9ms
14:44:15,929 INFO  [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774: Service status report
JBAS014775:    New missing/unsatisfied dependencies:
      service jboss.persistenceunit."jboss-as-kitchensink.war#primary".__FIRST_PHASE__ (missing) dependents: [service jboss.deployment.unit."jboss-as-kitchensink.war".POST_MODULE] 
JBAS014777:   Services which failed to start:      service jboss.persistenceunit."jboss-as-kitchensink.war#primary".__FIRST_PHASE__

Comment 1 gil cattaneo 2013-11-18 15:08:43 UTC
hi
try with

        <dependency>
            <!--
                Only really needed for the antrun plugin defined below (which in turn is only really needed
                to work around a missing feature on the compile plugin; lovely no?).  However I have not
                found a way to declare this dependency local to the antrun plugin and then reference it
                from the <javac />'s <classpath /> :(
            -->
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-jpamodelgen</artifactId>
            <version>1.0.0.Final</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.hibernate.javax.persistence</groupId>
                    <artifactId>hibernate-jpa-2.0-api</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <configuration>
                    <tasks>
                        <property name="target.dir" value="${project.build.directory}/generated-src/jpamodelgen"/>
                        <property name="src.dir" value="${project.build.testSourceDirectory}"/>
                        <property name="jdk16_home" value="${jdk16_home}"/>
                        <property name="classpath" refid="maven.test.classpath"/>
                        <ant antfile="${basedir}/build.xml">
                            <target name="generate-metamodel"/>
                        </ant>
                    </tasks>
                </configuration>
                <!--executions>
                    <execution>
                        <id>process_annotations</id>
                        <phase>process-test-sources</phase>
                        <configuration>
<testSourceRoot>${project.build.directory}/generated-src/jpamodelgen</testSourceRoot>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution-->
                </executions>
            </plugin>

Comment 2 gil cattaneo 2013-11-18 15:13:27 UTC
<!-- $Id: build.xml 15105 2008-08-18 19:20:37Z hardy.ferentschik $ -->
<!--
  Hibernate Entity Manager ANT build script.
-->

<ant antfile="${basedir}/build.xml">

<project name="HibernateEntityManager" basedir=".">

    <target name="generate-metamodel" depends="uptodate.check" unless="metamodel.build.notRequired">
        <echo>Processing JPA annotations for metamodel generation</echo>
        <mkdir dir="${target.dir}"/>
        <javac srcdir="${src.dir}"
               destdir="${target.dir}"
               failonerror="false"
               fork="true"
               executable="${jdk16_home}/bin/javac"
               target="1.5"
               classpath="${classpath}">
            <compilerarg value="-proc:only"/>
        </javac>
        <touch file="${target.dir}/.staleflag"/>
    </target>

    <target name="uptodate.check">
        <uptodate property="metamodel.build.notRequired" targetfile="${target.dir}/.staleflag">
            <srcfiles dir="${src.dir}" includes="**/*.java"/>
        </uptodate>
    </target>

</project>

Comment 3 gil cattaneo 2013-11-18 16:04:38 UTC
                <plugin>
                    <groupId>org.bsc.maven</groupId>
                    <artifactId>maven-processor-plugin</artifactId>
                    <version>2.0.2</version>
                    <configuration>
                        <defaultOutputDirectory>${project.build.directory}/generated-sources/logging
                        </defaultOutputDirectory>
                        <processors>
                            <processor>org.jboss.logging.processor.apt.LoggingToolsProcessor</processor>
                        </processors>
                        <compilerArguments>-proc:only -target 1.6 -sourcepath ${project.build.directory}/generated-sources/
                        </compilerArguments>
                    </configuration>
                    <executions>
                        <execution>
                            <id>process</id>
                            <phase>generate-sources</phase>
                            <goals>
                                <goal>process</goal>
                            </goals>
                        </execution>
                    </executions>
                    <dependencies>
                        <dependency>
                            <groupId>org.jboss.logging</groupId>
                            <artifactId>jboss-logging-processor</artifactId>
                            <version>1.0.3.Final</version>
                        </dependency>
                    </dependencies>
                </plugin>

Comment 4 Fedora Update System 2013-11-19 10:33:49 UTC
hibernate-4.3.0-0.6.Beta4.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/hibernate-4.3.0-0.6.Beta4.fc20

Comment 5 Fedora Update System 2013-11-19 21:51:51 UTC
Package hibernate-4.3.0-0.6.Beta4.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing hibernate-4.3.0-0.6.Beta4.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-21723/hibernate-4.3.0-0.6.Beta4.fc20
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2013-12-14 03:38:23 UTC
hibernate-4.3.0-0.6.Beta4.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.