diff --git a/hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/MappingMetamodelImpl.java b/hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/MappingMetamodelImpl.java index d3c7f9868f..2988762c9c 100644 --- a/hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/MappingMetamodelImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/MappingMetamodelImpl.java @@ -62,6 +62,7 @@ import org.hibernate.persister.entity.EntityPersister; import org.hibernate.persister.entity.Queryable; import org.hibernate.persister.spi.PersisterFactory; import org.hibernate.query.BindableType; +import org.hibernate.query.derived.AnonymousTupleSqmPathSource; import org.hibernate.query.sqm.SqmExpressible; import org.hibernate.query.sqm.tree.domain.SqmPath; import org.hibernate.query.sqm.tree.expression.SqmFieldLiteral; @@ -790,6 +791,13 @@ public class MappingMetamodelImpl extends QueryParameterBindingTypeResolverImpl throw new UnsupportedOperationException( "Resolution of embedded-valued SqmExpressible nodes not yet implemented" ); } + if ( sqmExpressible instanceof AnonymousTupleSqmPathSource ) { + return resolveMappingExpressible( + ( (AnonymousTupleSqmPathSource) sqmExpressible ).getSqmPathType(), + tableGroupLocator + ); + } + if ( sqmExpressible instanceof EmbeddableTypeImpl ) { return (MappingModelExpressible) sqmExpressible; }