HHH-11215 - Fix NullPointerException when collection of embeddables reference an unaudited entity.
This commit is contained in:
parent
1e030b2dc4
commit
b1a9676146
|
@ -104,8 +104,16 @@ public class ToOneIdMapper extends AbstractToOneMapper {
|
||||||
boolean ignoreNotFound = false;
|
boolean ignoreNotFound = false;
|
||||||
if ( !referencedEntity.isAudited() ) {
|
if ( !referencedEntity.isAudited() ) {
|
||||||
final String referencingEntityName = enversService.getEntitiesConfigurations().getEntityNameForVersionsEntityName( (String) data.get( "$type$" ) );
|
final String referencingEntityName = enversService.getEntitiesConfigurations().getEntityNameForVersionsEntityName( (String) data.get( "$type$" ) );
|
||||||
|
if ( referencingEntityName == null && primaryKey == null ) {
|
||||||
|
// HHH-11215 - Fix for NPE when Embeddable with ManyToOne inside ElementCollection
|
||||||
|
// an embeddable in an element-collection
|
||||||
|
// todo: perhaps the mapper should account for this instead?
|
||||||
|
ignoreNotFound = true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
ignoreNotFound = enversService.getEntitiesConfigurations().getRelationDescription( referencingEntityName, getPropertyData().getName() ).isIgnoreNotFound();
|
ignoreNotFound = enversService.getEntitiesConfigurations().getRelationDescription( referencingEntityName, getPropertyData().getName() ).isIgnoreNotFound();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if ( ignoreNotFound ) {
|
if ( ignoreNotFound ) {
|
||||||
// Eagerly loading referenced entity to silence potential (in case of proxy)
|
// Eagerly loading referenced entity to silence potential (in case of proxy)
|
||||||
// EntityNotFoundException or ObjectNotFoundException. Assigning null reference.
|
// EntityNotFoundException or ObjectNotFoundException. Assigning null reference.
|
||||||
|
|
Loading…
Reference in New Issue