@Path("/upload") @POST @Consumes(MediaType.MULTIPART_FORM_DATA) @Produces(MediaType.APPLICATION_JSON) public Response upload(FormDataMultiPart form) { List<FormDataBodyPart> parts = form.getFields("file"); List<String> result = newArrayList<String>(); for (FormDataBodyPart part : parts) { FormDataContentDispositionfile= part.getFormDataContentDisposition(); InputStreamfileInputStream= part.getValueAs(InputStream.class);
StringfilePath="/tmp/" + file.getFileName(); // save the file to the server saveFile(fileInputStream, filePath); Stringoutput="File saved to server location using FormDataMultiPart : " + filePath; result.add(output); } return Response.ok(result).build(); }
// save uploaded file to a defined location on the server privatevoidsaveFile(InputStream uploadedInputStream, String serverLocation) { try { OutputStreamoutputStream=newFileOutputStream(newFile(serverLocation)); intread=0; byte[] bytes = newbyte[1024]; while ((read = uploadedInputStream.read(bytes)) != -1) { outputStream.write(bytes, 0, read); } outputStream.flush(); outputStream.close(); uploadedInputStream.close();