Example usage for org.apache.wicket.markup.html.form.upload FileUpload delete

List of usage examples for org.apache.wicket.markup.html.form.upload FileUpload delete

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.form.upload FileUpload delete.

Prototype

public void delete() 

Source Link

Document

Deletes temp file from disk

Usage

From source file:guru.mmp.application.web.template.pages.AddReportDefinitionPage.java

License:Apache License

/**
 * Constructs a new <code>AddReportDefinitionPage</code>.
 *
 * @param previousPage the previous page
 *///from w  w w  .ja  v  a 2  s .  c  o  m
AddReportDefinitionPage(PageReference previousPage) {
    super("Add Report Definition");

    try {
        Form<ReportDefinition> addForm = new Form<>("addForm",
                new CompoundPropertyModel<>(new Model<>(new ReportDefinition())));

        addForm.getModelObject().setId(UUID.randomUUID());

        ReportDefinitionInputPanel reportDefinitionInputPanel = new ReportDefinitionInputPanel(
                "reportDefinition", false);

        addForm.add(reportDefinitionInputPanel);

        // The "addButton" button
        Button addButton = new Button("addButton") {
            private static final long serialVersionUID = 1000000;

            @Override
            public void onSubmit() {
                FileUpload fileUpload = null;

                try {
                    ReportDefinition reportDefinition = addForm.getModelObject();

                    fileUpload = reportDefinitionInputPanel.getFileUpload();

                    ByteArrayOutputStream baos = new ByteArrayOutputStream();
                    int numberOfBytesRead;
                    InputStream in = new BufferedInputStream(fileUpload.getInputStream());
                    byte[] buffer = new byte[512];

                    while ((numberOfBytesRead = in.read(buffer)) != -1) {
                        baos.write(buffer, 0, numberOfBytesRead);
                    }

                    reportDefinition.setTemplate(baos.toByteArray());

                    reportingService.saveReportDefinition(reportDefinition);

                    setResponsePage(previousPage.getPage());
                } catch (Throwable e) {
                    logger.error("Failed to add the report definition: " + e.getMessage(), e);

                    AddReportDefinitionPage.this.error("Failed to add the report definition");
                } finally {
                    try {
                        if (fileUpload != null) {
                            // Delete the uploaded file
                            fileUpload.delete();
                        }
                    } catch (Throwable e) {
                        logger.error(String.format("Failed to delete the uploaded file (%s)",
                                fileUpload.getClientFileName()), e);
                    }
                }
            }
        };

        addButton.setDefaultFormProcessing(true);
        addForm.add(addButton);

        Button cancelButton = new Button("cancelButton") {
            private static final long serialVersionUID = 1000000;

            @Override
            public void onSubmit() {
                setResponsePage(previousPage.getPage());
            }
        };

        cancelButton.setDefaultFormProcessing(false);
        addForm.add(cancelButton);

        add(addForm);
    } catch (Throwable e) {
        throw new WebApplicationException("Failed to initialise the AddReportDefinitionPage", e);
    }
}

From source file:guru.mmp.application.web.template.pages.UpdateReportDefinitionPage.java

License:Apache License

/**
 * Constructs a new <code>UpdateReportDefinitionPage</code>.
 *
 * @param previousPage          the previous page
 * @param reportDefinitionModel the model for the report definition
 *//*from w w w .  jav a 2s  .  c  om*/
public UpdateReportDefinitionPage(PageReference previousPage, IModel<ReportDefinition> reportDefinitionModel) {
    super("Update Report Definition");

    try {
        Form<ReportDefinition> updateForm = new Form<>("updateForm",
                new CompoundPropertyModel<>(reportDefinitionModel));

        ReportDefinitionInputPanel reportDefinitionInputPanel = new ReportDefinitionInputPanel(
                "reportDefinition", true);

        updateForm.add(reportDefinitionInputPanel);

        // The "updateButton" button
        Button updateButton = new Button("updateButton") {
            private static final long serialVersionUID = 1000000;

            @Override
            public void onSubmit() {
                FileUpload fileUpload = null;

                try {
                    ReportDefinition reportDefinition = reportDefinitionModel.getObject();

                    WebSession session = getWebApplicationSession();

                    fileUpload = reportDefinitionInputPanel.getFileUpload();

                    ByteArrayOutputStream baos = new ByteArrayOutputStream();
                    int numberOfBytesRead;
                    InputStream in = new BufferedInputStream(fileUpload.getInputStream());
                    byte[] buffer = new byte[512];

                    while ((numberOfBytesRead = in.read(buffer)) != -1) {
                        baos.write(buffer, 0, numberOfBytesRead);
                    }

                    reportDefinition.setTemplate(baos.toByteArray());

                    reportingService.saveReportDefinition(reportDefinition);

                    setResponsePage(previousPage.getPage());
                } catch (Throwable e) {
                    logger.error("Failed to update the report definition: " + e.getMessage(), e);

                    UpdateReportDefinitionPage.this.error("Failed to update the report definition");
                } finally {
                    try {
                        if (fileUpload != null) {
                            // Delete the uploaded file
                            fileUpload.delete();
                        }
                    } catch (Throwable e) {
                        logger.error(String.format("Failed to delete the uploaded file (%s)",
                                fileUpload.getClientFileName()), e);
                    }
                }
            }
        };

        updateButton.setDefaultFormProcessing(true);
        updateForm.add(updateButton);

        Button cancelButton = new Button("cancelButton") {
            private static final long serialVersionUID = 1000000;

            @Override
            public void onSubmit() {
                setResponsePage(previousPage.getPage());
            }
        };

        cancelButton.setDefaultFormProcessing(false);
        updateForm.add(cancelButton);

        add(updateForm);
    } catch (Throwable e) {
        throw new WebApplicationException("Failed to initialise the UpdateReportDefinitionPage", e);
    }
}

From source file:net.unit8.longadeseo.page.plugin.PluginTestPage.java

License:Apache License

public PluginTestPage(final PluginRegistry pluginRegistry) {
    final Label testResult = new Label("testResult", "");
    testResult.setOutputMarkupId(true);/* w w  w  .  j  a  v a2 s .  c o  m*/
    add(testResult);
    add(new Label("pluginName", pluginRegistry.getName()));

    Form<ValueMap> uploadForm = new Form<ValueMap>("uploadForm");
    final FileUploadField fileUploadField = new FileUploadField("testFile");
    fileUploadField.add(new AjaxFormSubmitBehavior(uploadForm, "onchange") {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target) {
            FileUpload file = fileUploadField.getFileUpload();
            Plugin plugin = pluginRegistry.getPlugin();
            MockDavResource resource = new MockDavResource(file.getClientFileName());
            StringWriter error = new StringWriter();
            try {
                plugin.init();
                plugin.beforeService(resource);
                plugin.afterService(resource, file.getInputStream());
            } catch (IOException e) {
                logger.error("???????", e);
            } catch (Exception e) {
                e.printStackTrace(new PrintWriter(error));
            } finally {
                file.delete();
            }
            testResult.setDefaultModelObject(error.toString());
            target.add(testResult);
        }

        @Override
        protected void onError(AjaxRequestTarget target) {
            // TODO ???
        }
    });
    uploadForm.add(fileUploadField);
    add(uploadForm);
}

From source file:org.apache.openmeetings.web.common.UploadableImagePanel.java

License:Apache License

public void process(Optional<AjaxRequestTarget> target) {
    FileUpload fu = fileUploadField.getFileUpload();
    if (fu != null) {
        File temp = null;/*  www  . j  a  va  2 s .  co  m*/
        try {
            temp = fu.writeToTempFile();
            StoredFile sf = new StoredFile(fu.getClientFileName(), temp);
            if (sf.isImage()) {
                processImage(sf, temp);
            }
        } catch (Exception e) {
            log.error("Error", e);
        } finally {
            if (temp != null && temp.exists()) {
                log.debug("Temp file was deleted ? {}", temp.delete());
            }
            fu.closeStreams();
            fu.delete();
        }
    }
    update(target);
}

From source file:org.apache.openmeetings.web.room.sidebar.UploadDialog.java

License:Apache License

@Override
protected void onSubmit(AjaxRequestTarget target, DialogButton btn) {
    List<FileUpload> ful = uploadField.getFileUploads();
    if (ful != null) {
        boolean clean = cleanWb.getModelObject();
        for (FileUpload fu : ful) {
            FileItem f = new FileItem();
            f.setSize(fu.getSize());//from ww  w  . j  a  v  a2 s  .c  om
            f.setName(fu.getClientFileName());
            f.setExternalType(room.getRoom().getExternalType());
            BaseFileItem parent = roomFiles.getLastSelected();
            if (parent == null || !(parent instanceof FileItem)) {
                f.setOwnerId(getUserId());
            } else {
                f.setRoomId(parent.getRoomId());
                f.setOwnerId(parent.getOwnerId());
                f.setGroupId(parent.getGroupId());
                if (parent.getId() != null) {
                    f.setParentId(BaseFileItem.Type.Folder == parent.getType() ? parent.getId()
                            : parent.getParentId());
                }
            }
            f.setInsertedBy(getUserId());

            try {
                ProcessResultList logs = processor.processFile(f, fu.getInputStream());
                for (ProcessResult res : logs.getJobs()) {
                    fileLogDao.add(res.getProcess(), f, res);
                }
                room.getSidebar().updateFiles(target);
                if (logs.hasError()) {
                    form.error(getString("convert.errors.file"));
                } else {
                    if (toWb.getModelObject()) {
                        room.getWb().sendFileToWb(f, clean);
                        clean = false;
                    }
                }
            } catch (Exception e) {
                log.error("Unexpected error while processing uploaded file", e);
                form.error(e.getMessage() == null ? "Unexpected error" : e.getMessage());
            } finally {
                fu.closeStreams();
                fu.delete();
            }
        }
        if (form.hasError()) {
            onError(target, null);
        } else {
            close(target, null);
        }
    }
}

From source file:org.projectforge.web.scripting.ScriptingPage.java

License:Open Source License

protected void upload() {
    accessChecker.checkIsLoggedInUserMemberOfGroup(ProjectForgeGroup.FINANCE_GROUP,
            ProjectForgeGroup.CONTROLLING_GROUP);
    accessChecker.checkRestrictedOrDemoUser();
    log.info("upload");
    final FileUpload fileUpload = form.fileUploadField.getFileUpload();
    if (fileUpload != null) {
        boolean delete = false;
        try {//w  w  w  . j  a  v a  2  s  .c  o  m
            final InputStream is = fileUpload.getInputStream();
            final String clientFileName = fileUpload.getClientFileName();
            if (clientFileName.endsWith(".jrxml") == true) {
                delete = true;
                final JasperReport report = JasperCompileManager.compileReport(is);
                if (report != null) {
                    getReportScriptingStorage().setJasperReport(report, clientFileName);
                }
            } else if (clientFileName.endsWith(".xls") == true) {
                final StringBuffer buf = new StringBuffer();
                buf.append("report_")
                        .append(FileHelper.createSafeFilename(PFUserContext.getUser().getUsername(), 20))
                        .append(".xls");
                final File file = new File(ConfigXml.getInstance().getWorkingDirectory(), buf.toString());
                fileUpload.writeTo(file);
                getReportScriptingStorage().setFilename(clientFileName, file.getAbsolutePath());
            } else {
                log.error("File extension not supported: " + clientFileName);
            }
        } catch (final Exception ex) {
            log.error(ex.getMessage(), ex);
            error("An error occurred (see log files for details): " + ex.getMessage());
        } finally {
            if (delete == true) {
                fileUpload.delete();
            }
        }
    }
}