【发布时间】:2016-01-11 22:28:00
【问题描述】:
我正在尝试提供在我的 vaadin 应用程序中上传文件的功能
protected Upload questionImageUpload = new Upload("Upload question", questionReceiver);
questionImageUpload.addFinishedListener(new Upload.FinishedListener() {
@Override
public void uploadFinished(Upload.FinishedEvent event) {
boolean hasLock = VaadinSession.getCurrent().hasLock();
button.setEnabled(false);
}
});
但是,在我的FinishListener.uploadFinished() 中,如果我修改了一些 UI 元素(在上面,我禁用了一个按钮),则不会应用修改。
我假设这个方法可以在非 UI 线程中调用,所以我通过在上面的 uploadFinished 中放置断点来检查 VaadinSession 是否可用。但是,VaadinSession.getCurrent() 没有返回 null。 hasLock 也是如此。
可能是什么原因?
我在 Google App Engine 上运行这个 vaadin 应用程序(仍然在 IntelliJ IDEA 中本地运行)。这可能是这背后的原因吗?
【问题讨论】:
标签: java google-app-engine file-upload vaadin