2016-01-06 43 views
0

我登录对象图中所做的更改,并正在接受ReferenceChange(这是正确的):访问ReferenceChange对象引用

ReferenceChange{globalId:'JaversTest2$BeanWithField/1', property:'integerHolder', oldRef:'JaversTest2$IntegerHolder/4', newRef:'JaversTest2$IntegerHolder/3'} 

有没有办法对我来说,检索与globalId实际参考对象:“JaversTest2 $ IntegerHolder/4”,因为我想记录实际值之前和之后的值?

回答

1

简短的回答是没有。如果使用javers.compare(),那些对象仅在ObjectGraph中可用,这是内部JaVers数据结构。

考虑改变你的映射。在这种情况下,如果需要更改对象的值,请尝试将它们映射为ValueObjects(不是实体)。

+0

感谢您的快速回答。在你回答之前,我已经走上了这条路,在这种情况下它可能会起作用 - 不幸的是,这意味着配置我的javers实例的方式不同(即实体/值),具体取决于我比较的域对象。在ReferenceChange对象中公开这些引用是否是一个合理的更改 - 与其他更改类型可用的类似? – stacktrace

+0

是的,将这些引用添加到ReferenceChange是合理的,但对象引用仅适用于新的差异(由'javers.compare()'创建),而不适用于由JQL创建的差异 –

+0

这适用于我的用例。我应该提交更改请求吗? – stacktrace