从父模型继承时java 8 UUID不匹配
在父JAVA模型中,我像这样在循环中生成UUID,因为有多个项:从父模型继承时java 8 UUID不匹配,java,java-8,aem,uuid,Java,Java 8,Aem,Uuid,在父JAVA模型中,我像这样在循环中生成UUID,因为有多个项: @PostConstruct protected void init() { list = IntStream.range(0, items) .boxed() .map(idx -> "item" + idx) .collect(Collectors.toList()); this.id = UUID.ra
@PostConstruct
protected void init() {
list = IntStream.range(0, items)
.boxed()
.map(idx -> "item" + idx)
.collect(Collectors.toList());
this.id = UUID.randomUUID().toString();
}
在子模型中,我希望为每个迭代继承这个id。我使用了以下资源:
Resource parentResource = resource.getParent();
ParentClass parentClass = parentResource.adaptTo(parentClass.class);
parentId = parentClass.getId();
问题是,子级继承下一个生成的UUID!如何将一个UUID从父级保留到子级,然后在下一次迭代中更改?这是预期的行为,因为您正在调用子级中的
parentResource.adapteto
方法,这将再次触发父级的@PostConstruct
方法
您可以做的是将UUID持久化/保存为特定资源的CRX/de数据库中的属性
您可以考虑的另一种方法是通过请求将父模型的数据发送给子代,即“代码>请求。SETIGATE(…)
请详细说明:“在子模型中,我想继承每个ID这个ID”,什么迭代?“问题是,子级继承生成的下一个UUID!”,下一个UUID
?您的数据库中只有一个UUIDexample@smac89UUID每次都会生成一个随机id,所以问题是,在子模型中,生成下一个id,而我希望在一次迭代中使用与父级相同的id,然后在下一次迭代中,我希望生成下一个随机UUID,并且由child继承,这个ID应该标识资源还是模型的实例?你能发布模型类的完整示例吗?如何使用该值?您需要在多个AEM实例中保持相同吗?