Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何为具有聚合(没有JPA容器)的域类创建Vaadin表单?_Java_Grails_Persistence_Gorm_Vaadin - Fatal编程技术网

Java 如何为具有聚合(没有JPA容器)的域类创建Vaadin表单?

Java 如何为具有聚合(没有JPA容器)的域类创建Vaadin表单?,java,grails,persistence,gorm,vaadin,Java,Grails,Persistence,Gorm,Vaadin,我有一个使用Vaadin版本6.8.0的应用程序(通过Grails Vaadin插件版本1.5.4) 如果我有一个与另一个类文件有1:1关系的Java域类问题,那么在没有(高级)Vaadin JPA容器的情况下,编写IssueForm以创建新问题和编辑现有问题的最佳方法是什么 在表单中,我想显示一个组合框,从所有可用文件中选择一个文件。 我已经知道我可以在IssueForm构造函数中执行类似的操作: setFormFieldFactory(new DefaultFieldFactory()

我有一个使用Vaadin版本6.8.0的应用程序(通过Grails Vaadin插件版本1.5.4)

如果我有一个与另一个类文件有1:1关系的Java域类问题,那么在没有(高级)Vaadin JPA容器的情况下,编写IssueForm以创建新问题和编辑现有问题的最佳方法是什么

在表单中,我想显示一个组合框,从所有可用文件中选择一个文件。 我已经知道我可以在IssueForm构造函数中执行类似的操作:

  setFormFieldFactory(new DefaultFieldFactory() {
        @Override
        public Field createField(Item item, Object propertyId, Component uiContext) {
            if (propertyId.equals("cover")) {
                ComboBox cb = new ComboBox("Cover")
                for (FileListItem fileListItem : fileService.getAllFilesForCategory()) {
                    cb.addItem(fileListItem);
                }

                return cb;
            } else {
                Field field = super.createField(item, propertyId, uiContext);
                return field;
            }
        }
    });
  • 如果我使用DTO将Vaadin bean连接到Java域类,IssueListItem是否需要引用FileListItem?还是直接归档
  • 我可以在新的/编辑的版本中自动填充所选文件(或FileListItem?)吗?怎么用?若否,如何处理?

如果使用DTO,则是:IssueListItem需要引用FileListItem,然后在另一个位置将IssueListItem和FileListItem转换为域持久类Issue和File

“自动填充所选文件”的确切含义是什么?combobox或域类到底应该发生什么。。。?