[
https://jira.jboss.org/jira/browse/JBIDE-4201?page=com.atlassian.jira.plu...
]
Dmitry Geraskov commented on JBIDE-4201:
----------------------------------------
I mean that if hibernate developer uses single-table-per-class-hierarchy mapping strategy
and core mapping(by hbm files) it is required to have <discriminator> element in
hierarchy-root class mapping(to build session factory). But if he uses annotation-style
mapping he do not need to add @Discriminator annotation for hierarchy-root entity. I went
into built session factory and found that in this situation hibernate expected to see
"DTYPE" column in the table and going to use discriminator-values of
"string" type.
Discriminator of RootClass is not exported.
-------------------------------------------
Key: JBIDE-4201
URL:
https://jira.jboss.org/jira/browse/JBIDE-4201
Project: Tools (JBoss Tools)
Issue Type: Sub-task
Components: Hibernate
Affects Versions: 3.0.0.GA
Reporter: Dmitry Geraskov
Assignee: Max Rydahl Andersen
Fix For: 3.1.0.M1
Attachments: patch.txt
RootClass.discriminator value used to determine discriminator type and columns when
table-pre-type-hierarchy used in mapping, but element discriminator never exported and
sessionFactory can't be built for such configuration:
org.hibernate.MappingException: No discriminator found for com.jboss.dvd.seam.Admin.
Discriminator is needed when 'single-table-per-hierarchy' is used and a class has
subclasses
org.hibernate.MappingException: No discriminator found for com.jboss.dvd.seam.Admin.
Discriminator is needed when 'single-table-per-hierarchy' is used and a class has
subclasses
at org.hibernate.mapping.SingleTableSubclass.validate(SingleTableSubclass.java:41)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1102)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1287)
at org.hibernate.console.ConsoleConfiguration$3.execute(ConsoleConfiguration.java:502)
at
org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:64)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:95)
at
org.hibernate.console.ConsoleConfiguration.buildSessionFactory(ConsoleConfiguration.java:497)
...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira