[jboss-jira] [JBoss JIRA] (WFLY-2685) java.lang.IllegalStateException: Collection element (many-to-many) table alias cannot be empty"}}

Luca Masini (JIRA) issues at jboss.org
Tue Dec 24 04:30:32 EST 2013


Luca Masini created WFLY-2685:
---------------------------------

             Summary: java.lang.IllegalStateException: Collection element (many-to-many) table alias cannot be empty"}}
                 Key: WFLY-2685
                 URL: https://issues.jboss.org/browse/WFLY-2685
             Project: WildFly
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: JPA / Hibernate
    Affects Versions: 8.0.0.CR1
         Environment: Mac OS 10.9

Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

wildfly-8.0.0.CR1
            Reporter: Luca Masini
            Assignee: Scott Marlow


I have a regression from WF 8 Beta 1, I created a small test case that demostrate it.

In practice mapping an ElementCollection like this:

    @ElementCollection(fetch = FetchType.EAGER)
    @CollectionTable(name = "OUTPUTREQUEST_PREVWQUERYPRM")
    @MapKeyJoinColumn(name = "param_id", referencedColumnName = "id")
    Map<ParameterRegistry, String> previewQueryParams;

I got an exception during deployment:

Caused by: java.lang.IllegalStateException: Collection element (many-to-many) table alias cannot be empty
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.renderManyToManyJoin(LoadQueryJoinAndFetchProcessor.java:357) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.renderJoin(LoadQueryJoinAndFetchProcessor.java:154) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.processQuerySpaceJoin(LoadQueryJoinAndFetchProcessor.java:137) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.processQuerySpaceJoins(LoadQueryJoinAndFetchProcessor.java:132) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.processQuerySpaceJoin(LoadQueryJoinAndFetchProcessor.java:138) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.processQuerySpaceJoins(LoadQueryJoinAndFetchProcessor.java:132) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.processQuerySpaceJoins(LoadQueryJoinAndFetchProcessor.java:113) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.AbstractLoadQueryDetails.generate(AbstractLoadQueryDetails.java:171) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.EntityLoadQueryDetails.<init>(EntityLoadQueryDetails.java:106) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.plan.exec.internal.BatchingLoadQueryDetailsFactory.makeEntityLoadQueryDetails(BatchingLoadQueryDetailsFactory.java:73) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.AbstractLoadPlanBasedEntityLoader.<init>(AbstractLoadPlanBasedEntityLoader.java:100) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.EntityLoader.<init>(EntityLoader.java:134) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.EntityLoader.<init>(EntityLoader.java:55) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.EntityLoader$Builder.byUniqueKey(EntityLoader.java:98) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.EntityLoader$Builder.byPrimaryKey(EntityLoader.java:94) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.plan.AbstractBatchingEntityLoaderBuilder.buildNonBatchingLoader(AbstractBatchingEntityLoaderBuilder.java:47) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.loader.entity.BatchingEntityLoaderBuilder.buildLoader(BatchingEntityLoaderBuilder.java:76) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:2506) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.persister.entity.AbstractEntityPersister.createEntityLoader(AbstractEntityPersister.java:2528) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.persister.entity.AbstractEntityPersister.createLoaders(AbstractEntityPersister.java:4029) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.persister.entity.AbstractEntityPersister.postInstantiate(AbstractEntityPersister.java:4011) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:479) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850) [hibernate-entitymanager-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843) [hibernate-entitymanager-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:399) [hibernate-core-4.3.0.Final.jar:4.3.0.Final]
	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842) [hibernate-entitymanager-4.3.0.Final.jar:4.3.0.Final]
	at org.jboss.as.jpa.hibernate4.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44) [jipijapa-hibernate4-3-1.0.0.Final.jar:]
	at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154) [wildfly-jpa-8.0.0.CR1.jar:8.0.0.CR1]
	... 8 more

I saw that is raised in the org.hibernate.loader.plan.exec.internal.LoadQueryJoinAndFetchProcessor.renderManyToOneJoin().

The same test-case work under

WF 8.0.0.Beta1
Glassfish 4
WebLogic 12c


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list