With the upload component, you can access the local file system of the client to select any files and upload them on the server. The component consists of two buttons: the first opens the local file manager and enables the selection of a file, whereas the second starts the upload activity. The name of the selected file will be displayed between the two buttons.
The upload component requires a "receiver" which receives the file on the server side and processes it.
File upload
// For later usage, e.g. in a message displayed by uploadSucceeded-Event File file; // Build receiver Receiver receiver = new Receiver() { @Override public OutputStream receiveUpload(final String filename, final String mimeType) { // Create upload stream to write to FileOutputStream fos = null; try { // Get path to servlet's temp directory final File temporaryDirectory = (File) VaadinServlet.getCurrent().getServletContext().getAttribute(ServletContext.TEMPDIR); // Concatenate temporaryDirectory with filename and open the file for writing. file = new File(temporaryDirectory, filename); // Create the output stream fos = new FileOutputStream(file); } catch (final java.io.FileNotFoundException e) { Notification.show("Could not open file", Type.ERROR_MESSAGE); return null; } return fos; } }; // Set Receiver for upload component upload.setReceiver(receiver); |