当前位置: 首页 > 知识库问答 >
问题:

为第三方对象配置JaVers ID

谭建章
2023-03-14

我试图使用JaVers来存储来自第三方库的无法更改的对象。对象定义类似于:

interface TheirObject extends WithId{    
  //Other properties here...
}

interface WithId{
  String getId();
}

使用该接口的各种实现。ID字段无论如何都没有注释。

我尝试使用默认的JaVers配置,得到了以下错误:

JaversException MANAGED_CLASS_MAPPING_ERROR: given javaClass 'interface TheirObject' is mapped to ValueObjectType, expected EntityType
javers = JaversBuilder.javers()
  .registerEntity(new EntityDefinition(TheirObject.class))
  .build();
JaversException ENTITY_WITHOUT_ID: Class 'TheirObject' mapped as Entity has no Id property. Use @Id annotation to mark unique and not-null Entity identifier
javers = JaversBuilder.javers()
  .withMappingStyle(MappingStyle.BEAN)
  .registerEntity(new EntityDefinition(TheirObject.class, "id"))
  .build();
JaversException PROPERTY_NOT_FOUND: Property 'id' not found in class 'TheirObject'. If the name is correct - check annotations. Properties with @DiffIgnore or @Transient are not visible for JaVers.

共有1个答案

李鸿
2023-03-14
JaversBuilder.javers()
            .registerEntity(new EntityDefinition(TheirObject.class, "id"))        
            .build();
 类似资料:
  • 概述 基于百度移动统计的用户分群功能,推出的“用户触达-精准定向”功能,可以帮助您管理基于“百度云推送”、“极光”、“个推”等平台的推送Id,并支持根据多种维度筛选定向人群进行推送。具体功能,请登录MTJ网站后,顶部Tab选择“用户分群”,再选择左侧“用户触达-精准定向”进行了解。 在使用该用能时,在SDK集成阶段,需要您通过Api上传第三方平台的推送Id以提供百度移动统计平台进行管理。 具体的A

  • SDK支持上传推送平台的设备推送ID,上传后,可以后续通过WEB端筛选,导出特定人群的推送ID。目前支持的平台:百度云,极光,个推,华为,小米,友盟,信鸽,阿里云,OPPO,魅族。 iOS端的第三方推送平台推送ID打通,请查看该链接 平台推送ID上传 调用如下API: /** * 设置推送id,设置后推送ID会回传到服务器。WEB端可以支持根据筛选规则导出推送ID,将导出的推送ID对接到特定的推

  • 在第一和第二章中,我们讲解了 this 绑定如何根据函数调用的调用点指向不同的对象。但究竟什么是对象,为什么我们需要指向它们?这一章我们就来详细探索一下对象。 链接 语法 类型 内容 迭代 复习

  • 第一步,商城启用微信前台登陆,需要在Niushop商城后台设置->基础设置->第三方登陆,进入到微信配置界面。 我们可以看见需要配置APPID和APPSECRET,如何获取这两个参数? 第二步,登录微信开放平台,找到管理中心->网站应用->创建网站应用, 按照流程,填写基本信息->填写网站信息->提交成功,等待审核即可。 注意:填写回调域名只需填写网站域名即可。 第三步,在网站应用 查看申请应用的

  • 问题内容: 在我当前的项目中,我正在使用没有JPA批注的第三方库。 如何使用JPA和外部映射持久化该库中的对象? 问题答案: 检查这个和这个。简而言之: 创造 跟随(阅读) 您不必手动映射每列-只需提供一些细节(即集合和ID)。假定所有字段都是列(如果映射了类)。如果没有集合,则可以使用如下所示的内容: 请注意,指定时不需要完全限定的名称。 如果您想要的文件名称不同于,则可以通过以下方式指定该文件

  • 问题内容: 我有以下实体,我需要通过Hibernate 注释 坚持到关系数据库: 问题是: 我 不 希望它成为自己的实体/表。我希望它是映射到表的“值对象/类型” (通过向其添加列) 来自第三方图书馆,因此我无法对其进行修改 因此,我要寻找的表格形式的最终结果是: 无法修改时,如何让Hibernate进行基于注释的映射? 问题答案: 您要搜索的称为。 您可以只为以下内容定义 映射文件: 您可以在您