GWT编辑器 - 使用子编辑器编辑子目录

时间:2014-01-10 14:35:41

标签: java gwt

我想编辑DTO,它是值和其他DTO的组合。对于其中的一些子域,我已经有一个工作的编辑器,它被定义为Composite。结构是这样的:

public class TopDto {
    private SubDto subDto;

    public SubDto getSubDto();
    public void setSubDto(...);
}

public class TopEditor extends Composite implements Editor<TopDto> {
    @UiField
    SubEditor subEditor;
}

public class SubEditor extends Composite implements Editor<SubDto> {

}

因此,虽然SubEditor是SubDto的工作编辑器,但我不知道怎么说TopEditor UiField subEditor实际上是在编辑属性而不是属性本身。

到目前为止,我尝试使用TopDto中的subDto属性设置@Ignored并初始化subEditors驱动程序。但这并没有像预期的那样发挥作用。实际上问题是当我在TopEditor中调用driver.flush()时,它不会下降到调用subEditor.driver.flush()。

由于驱动程序是私有的(或受保护的),我无法显式调用SubEditor的driver.flush()并手动更改TopDto中的SubDto。所以我现在所做的就是给SubEditor提供一个公共的getSubDto()方法,它给我Dto然后手动插入它。 但据我所知,备用文档不是预期的工作流程,所以我在这里做错了。

有人可以给我一个例子,还是帮我建立一个如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用@Path注释将编辑器映射到bean属性?