gpt4 book ai didi

java - Vaadin 上传教程中出现 "Can not resolve symbol"错误

转载 作者:行者123 更新时间:2023-11-30 02:32:15 27 4
gpt4 key购买 nike

我在 Java 中使用 Vaadin,并且正在遵循本教程:Vaadin Upload所以我创建了一个新的类名称Uploader。但是有些东西在我的代码中不起作用,我把不起作用的东西放在**文本**中:

import com.vaadin.server.FileResource;
import com.vaadin.ui.*;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

/**
* Created by mflamant on 15/05/2017.
*/
public class Uploader {
final Embedded image = new Embedded("Uploaded image");
**image.setVisible(false);**

class Image implements Upload.Receiver, Upload.SucceededListener{
public File file;
public OutputStream receiveUpload(String filename, String mimeType){
FileOutputStream fos = null;
try{
file = new File(filename);
fos = new FileOutputStream(file);
} catch (final java.io.FileNotFoundException e){
e.printStackTrace();
return null;
}
return fos;
}

public void uploadSucceeded(Upload.SucceededEvent event){
image.setVisible(true);
image.setSource(new FileResource(file));
}
};

Image receiver = new Image();
Upload upload = new Upload("Upload image here", receiver);
**upload.setButtonCaption("Start Upload");**
**upload.SucceededListener(receiver);**

Panel panel = new Panel("Image storage");
Layout panelContent = new VerticalLayout();
**panelContent.addComponents(upload, image);**
**panel.setContent;**


}

我遇到的错误是“无法解析符号”。您能向我解释一下为什么这些线路不起作用吗?

最佳答案

Upload example没有列出应用程序的完整代码。它仅包含特定于上传组件本身的代码片段。如果您只是将这些代码片段粘贴到您的类中,则预计它们不会起作用。

此示例是 Vaadin Documentation 的一部分当您到达这一部分时,您应该了解基础知识。

示例代码旨在作为构建 Vaadin 组件的方法的一部分。特定的错误是您只能从可执行代码块调用方法,例如 image.setVisible(false)。您不能只是将它们粘贴到类声明中,那不是有效的 Java 代码。

教程链接至 a working code on Github 。正如您所看到的,它包含所有必要的初始化:

public class UploadExample extends CustomComponent implements BookExampleBundle {
private static final long serialVersionUID = -4292553844521293140L;

public void init (String context) {
//... omitted for brevity
basic(layout);
//... omitted for brevity
}

void basic(VerticalLayout layout) {
final Image image = new Image("Uploaded Image");
//the rest of the example code goes here

请注意,此类本身仍然不能作为独立应用程序运行。这只是其中之一。

那么,您现在可以做什么:

  • 完成 Vaadin Tutorial第一的。这应该可以帮助您掌握概念。
  • 阅读Introduction首先是文档的一部分。这将帮助您构建工作应用程序。然后您可以跳转到特定组件。
  • 克隆 Book Examples来自 Github 的应用程序,然后尝试弄清楚它是如何工作的。

关于java - Vaadin 上传教程中出现 "Can not resolve symbol"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43997850/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com