| Refresh | Home EGTry.com

a servlet that receive raw post data and save to a file


package test1;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class BinaryPostServlet extends HttpServlet {

       


	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("received raw post data");
		InputStream in=request.getInputStream();
		int size=request.getContentLength();
		copyTo(in,size,"/tmp/Post.dat");
		in.close();
		response.getWriter().println("done");
	}

	public static void copyTo(InputStream in,int size, String outputFile)  {
		try {
			OutputStream out=new FileOutputStream(outputFile);
			byte[] chunk= new byte[size];
			in.read(chunk);
			out.write(chunk,0,size);
			out.close();
		} catch (Exception e) {
			e.printStackTrace(System.out);
		}
	}
}