At the moment an {{@Entity}} can extend a {{@MappedSuperclass}} which has two or more generic embeddable properties. This will work, but when trying to query the actual properties inside the *concrete* embeddable types (as opposed to the generic ones) an error will be thrown because we have no way of retrieving them.
[https://hibernate.atlassian.net/browse/HHH-16195|https://hibernate.atlassian.net/browse/HHH-16195|smart-link] fixes embeddable-typed _declaredProperties_ registration for generic embeddables on the superclass, and [https://hibernate.atlassian.net/browse/HHH-16188|https://hibernate.atlassian.net/browse/HHH-16188|smart-link] has prepared a foundation to register the actual concrete embeddable types that for now is only used for identifiers:
* {{org.hibernate.metamodel.model.domain.AbstractManagedType.InFlightAccessImpl# addGenericEmbeddableAttribute addConcreteEmbeddableAttribute }} * {{org.hibernate.metamodel.model.domain.AbstractManagedType# findGenericEmbeddableAttribute findConcreteEmbeddableAttribute }}
This issue should address resolving concrete embeddable types for non-identifier properties. |
|