添加新项目后刷新下拉列表

时间:2013-06-28 14:20:45

标签: java vaadin

我是Vaadin的新手,我想实现这个:一个包含单个选择文件名的下拉列表。和上传文件按钮,上传文件后,文件名将添加到下拉列表中:

 List <String> fileDirList = Utilities.getDirectoryList("/home/amira/runtime/uploads/report");

  // Create a selection component
  Select select = new Select ("Select file");

   for (String fileName : fileDirList) {

      select.addItem(fileName);
    }

   public void uploadSucceeded(SucceededEvent event) {

        String userHome = System.getProperty( "user.home" );
        String filename = event.getFilename();


            // Open the file for writing.
            file = new File(userHome+"/runtime/uploads/report/"+filename);
            String fileName = filename.substring(0,filename.length()-4 );
            fileDirList.add(fileName);



    }
};

上传文件并在fileDirList中添加其名称后,下拉列表未更新的问题。 那么如何刷新它

1 个答案:

答案 0 :(得分:2)

当你向fileDirList添加一个对象时,select组件无法识别它,因为它们之间没有连接。

您可以创建一个方法,将文件名添加到选择组件和列表中:

private void addFilename(String sFilename) {
     fileDirList.add(sFilename);
     select.addItem(sFilename);
}

在您的上传代码中调用此方法。