Hello all,
I have the following program written that uploads a file to a specified location. what I'm trying to do is use cURL instead of an html webpage to upload the file.
I tried doing the followingthat returned requested resource not found error, also what can I do to enable multiple uploads at a time ? Use Parts ?Code:curl -F "FileUpload=@Test.txt" http://127.0.0.1/File_Upload/rest/upload
Any help would be appreciated![]()
Here is my program along with other info.
Using Tomcat server 7.026
Jersey 1.12
web.xmlCode:package com.file_upload; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import javax.ws.rs.Consumes; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import com.sun.jersey.core.header.FormDataContentDisposition; import com.sun.jersey.multipart.FormDataParam; @Path("/file") public class Upload{ @POST @Path("/upload") @Consumes(MediaType.MULTIPART_FORM_DATA) public Response uploadFile( @FormDataParam("file")InputStream uploadedInputStream, @FormDataParam("file") FormDataContentDisposition fileDetail){ String uploadedFileLocation = "C:/Program Files (x86)/Apache Software Foundation/Tomcat 7.0/webapps/uploaded" +fileDetail.getFileName(); //save the file writeToFile(uploadedInputStream,uploadedFileLocation); String output = "File uploaded to: " + uploadedFileLocation; return Response.status(200).entity(output).build(); } //save uploaded file to a new location private void writeToFile(InputStream uploadedInputStream, String uploadedFileLocation){ try{ OutputStream out = new FileOutputStream(new File(uploadedFileLocation)); int read = 0; byte[]bytes = new byte[1024]; out = new FileOutputStream(new File(uploadedFileLocation)); while((read = uploadedInputStream.read(bytes)) != -1){ out.write(bytes,0,read); } out.flush(); out.close(); } catch(IOException e){ e.printStackTrace(); } } }
Code:<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>File_Upload</display-name> <servlet> <servlet-name>Upload</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>com.file_upload</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Upload</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> </web-app>


Reply With Quote
Bookmarks