小编Abs*_*ive的帖子

如何在我的 Vaadin 服务中接收文件内容?

我想向我的网络应用程序添加一个上传按钮。在 HTML 模板中,我添加了:

<link rel="import" href="../../../bower_components/vaadin-upload/src/vaadin-upload.html">

<h2 id="header-Upload">Upload</h2>
<vaadin-upload nodrop/>
Run Code Online (Sandbox Code Playgroud)

我现在想在我的后端 Vaadin 进程中接收流。然后可以将该流插入数据库中。

https://vaadin.com/components/vaadin-upload/html-examples/upload-basic-demos上的文档未提供此信息。

我相信我应该以某种方式将 a 链接StreamReceiver<vaadin-upload>有问题的问题,但我不知道该怎么做。

我正在使用 Vaadin Flow(版本 12)。

附加信息

我尝试了以下方法:

在 HTML 中:

<vaadin-upload id="upload" nodrop/>
Run Code Online (Sandbox Code Playgroud)

在爪哇中:

public class MyView extends PolymerTemplate<Model> {
    private final MemoryBuffer buffer = new MemoryBuffer();
    @Id("upload")
    private final Upload       upload = new Upload(buffer);

    public MyView() {
        upload.addSucceededListener(event -> {
            System.out.println(event.getFileName());
            System.out.println(buffer.getInputStream());
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

当我上传文件时,出现以下异常:

[qtp162821120-20] ERROR com.vaadin.flow.server.DefaultErrorHandler - 
com.vaadin.flow.server.UploadException: Upload failed
    at com.vaadin.flow.server.communication.StreamReceiverHandler.streamToReceiver(StreamReceiverHandler.java:429)

Caused by: java.lang.IllegalStateException: …
Run Code Online (Sandbox Code Playgroud)

java vaadin vaadin12

2
推荐指数
1
解决办法
1216
查看次数

标签 统计

java ×1

vaadin ×1

vaadin12 ×1