hibernate envers:如何在关系字段中获取更改的值

hibernate enverse : how to get changed value in relation field

我正在使用 hibernate enverse 5.2。10.Final 和 postgres 数据库。

AuditReader auditReader = AuditReaderFactory.get(entityManager);
        String newValue = (String) auditReader.createQuery()
                .forEntitiesAtRevision(Vehicle.class, 2203869)
                .traverseRelation("vehicleType", JoinType.INNER).addProjection(AuditEntity.property("id")).up()
                .add(AuditEntity.property("vehicleType").hasChanged())              
                .add(AuditEntity.id().eq(2203422l))
                .add(AuditEntity.revisionNumber().eq(2203869)).getSingleResult();

vehicle table 与 vehicleType 具有多对一关系。 如何使用反向查询获取车辆实体的车辆类型 属性 的变化。 在这里我没有发现错误。 无法通过 Audientity.property("vehicleType")..hasChanged() 获得价值 他们是一个错误 属性 未找到。

auditReader.createQuery()
  .forEntitiesAtRevision( Vehicle.class, revisionNumber )                                           
  .traverseRelation( propertyname, JoinType.LEFT )
  .addProjection( AuditEntity.property("id") ).up()
  .add( AuditEntity.property( propertyname ).hasChanged() )
  .add( AuditEntity.id().eq( VehicleId ) )                                  
  .getSingleResult()