Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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 如何获取图像以在Wicket中显示它?_Java_User Interface_Wicket - Fatal编程技术网

Java 如何获取图像以在Wicket中显示它?

Java 如何获取图像以在Wicket中显示它?,java,user-interface,wicket,Java,User Interface,Wicket,我被图像困住了。我需要上传一个图像,然后在我的页面上显示它。 我现在正在做的是像这样上传文件: private Picture picture; *// picture model* private FileUploadField fileUpload; public PictureUploader() { Form<?> form = new Form<Void>("uploadForm") { /** *

我被图像困住了。我需要上传一个图像,然后在我的页面上显示它。 我现在正在做的是像这样上传文件:

private Picture picture;       *// picture model*
private FileUploadField fileUpload;

public PictureUploader() {


    Form<?> form = new Form<Void>("uploadForm") {

        /**
         * 
         */
        private static final long serialVersionUID = -694488846250739923L;

        protected void onSubmit() {

            FileUpload uploadedFile = fileUpload.getFileUpload();
            File newFile = new File(uploadedFile.getClientFileName());
            picture.setImage(newFile);

            PageParameters pageParameter = new PageParameters();
            pageParameter.put("file", picture.getImage());

            setResponsePage(DataPage.class,pageParameter);
        }

    };

    add(form);
    form.setMultiPart(true);
    form.add(setFileUpload(new FileUploadField("fileUpload")));
}

谁知道怎么做呢,请帮我弄清楚。

查看@user3241004中的删除链接,仅回答我是否发现您希望在页面中显示上载的图像作为标记,而您不知道如何创建html元素的src属性中所需的动态图像路径?(添加您正在使用的Wicket版本)我正在学习Wicket。它将从数据库中显示,但现在我只是在测试如何在没有数据库的情况下执行它。稍后,若要显示数据库中的图像,是否需要将字节转换回图像文件?另外,我不知道如何通过PageParameters传递DataPage中上传的图像。存储和显示数据库中的图像已经在StackOverflow上讨论过几次了。在两个页面之间,您可以使用您想要的任何对象创建一个合同,只是新页面必须有一个construtor,该construtor的对象类型是您需要成为合同主体的,例如,然后您调用该页面setResponsePage(新数据页(上载文件));
public DataPage(final PageParameters parameters) {

        File file;
        if (parameters.containsKey("file")) {
                // WHAT TO DO HERE? SINCE GET() FROM PAGEPARAMETERS DOES NOT WORK FOR IT!
        }

        final Label result = new Label("result", ?????);
        add(result);

    }