Hi, Sanjeev Kumar Neemkar,

I am unfamiliar with the "GZIPPostMethod" classes you are using, but I
achieved the result you are looking for using Java's GZIPOutputStream
and PipedInputStream:

http://juliusdavies.ca/gzip-post-example/

Hopefully this example I've prepared is helpful.

It's probably best not to set the "Content-Length" header in your
request.  I would use "Transfer-Encoding: chunked" instead.  But from
what you are saying, it sounds like that's what you are doing.  

Can you tell from httpclient wire tracing if "Content-Length" is getting
set in your request?



yours,

Julius



On Tue, 2006-21-03 at 17:07 -0800, Sanjeev Kumar Neemkar wrote:
> Hi,
> How to overcome java.io.EOFException for GZIPInputStream while uploading a
> file using commons-HTTPCLient?
> Note : file is not uploaded as multipart but by chuncks.
> 
> GZIPPostMethod and mGZIPRequestEntity used from location ....
> http://mail-archives.apache.org/mod_mbox/jakarta-commons-user/200508.mbox/[EMAIL
>  PROTECTED]
> 
> 
> Server Side code (in FileReceiverServlet):
> ------------------------------------------
>  in = new GZIPInputStream(request.getInputStream()); where the exception is
> thrown...
> 
> 
> Client Side code using commons-HTTPClient:
> ------------------------------------------
> 
> By using the GZIPPostMethod as below on client side:
> 
> File inFile = new File(<strUpLoadFilePath>);
> InputStream inputStream = new BufferedInputStream(new
> FileInputStream(inFile));
> 
> GZIPPostMethod method4 = new
> GZIPPostMethod("https://domain.name/FileReceiverServlet
> ");
> 
> BufferedInputStream buis = new BufferedInputStream(inputStream);
> GZIPRequestEntity mGZIPRequestEntity = new GZIPRequestEntity(buis);
> method4.setRequestEntity(mGZIPRequestEntity);
> method4.setContentChunked(true);
> 
> int statusCode4 = client.executeMethod(method4);
> method4.releaseConnection();
> 
> 
> The exception encountered at the server side is:
> 16:56:55 03/21/2006 [Servlet.Engine.Transports : 3] ERROR FTS.FileReceiver
> - doGet::Exception encountered at :new GZIPInputStream(
> request.getInputStream()
> java.io.EOFException
>         at java.util.zip.GZIPInputStream.readUByte
> (GZIPInputStream.java(Inlined
> Compiled Code))
>         at 
> java.util.zip.GZIPInputStream.readUShort(GZIPInputStream.java(Inlined
> Compiled Code))
>         at 
> java.util.zip.GZIPInputStream.readHeader(GZIPInputStream.java(Compiled
> Code))
>         at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java(Compiled
> Code))
>         at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java(Inlined
> Compiled Code))
>         at adp.tts.FileReceiverServlet.doGet(FileReceiverServlet.java(Compiled
> Code))
>         at adp.tts.CommonServlet.doPost(CommonServlet.java:54)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(
> StrictServletInstance.java:110)
>         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service (
> StrictLifecycleServlet.java:174)
>         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(
> StrictLifecycleServlet.java:313)
>         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(
> StrictLifecycleServlet.java :116)
>         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(
> ServletInstance.java:283)
>         at
> com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(
> ValidServletReferenceState.java:42)
>         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch
> (ServletInstanceReference.java(Inlined Compiled Code))
>         at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(
> WebAppRequestDispatcher.java(Compiled Code))
>         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(
> WebAppRequestDispatcher.java(Compiled Code))
>         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward (
> WebAppRequestDispatcher.java(Compiled Code))
>         at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(
> WebAppInvoker.java:80)
>         at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(
> WebAppInvoker.java :214)
>         at
> com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(
> CachedInvocation.java:71)
>         at
> com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(
> CacheableInvocationContext.java :116)
>         at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI
> (ServletRequestProcessor.java:186)
>         at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service
> (OSEListener.java:334)
>         at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(
> HttpConnection.java:56)
>         at com.ibm.ws.http.HttpConnection.readAndHandleRequest(
> HttpConnection.java:622)
>         at com.ibm.ws.http.HttpConnection.run (HttpConnection.java:457)
>         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)
> 
> Help is appreciated.
> -Sanjeev

-- 
Julius Davies
Senior Application Developer, Technology Services
Credit Union Central of British Columbia
http://www.cucbc.com/
Tel: 604-730-6385
Cel: 604-868-7571
Fax: 604-737-5910

1441 Creekside Drive
Vancouver, BC
Canada
V6J 4S7

http://juliusdavies.ca/



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to