hi there i'm traing to send a multipart reqest using the InputStreamRequestEntity in httpclient 3.0.1. this is the code:
note: clientRequest is an incoming HttpServletRequest, and the stream used for the InputStreamRequestEntity's constructor is obtained by using the commons.FileUpload API. ServletFileUpload upload = new ServletFileUpload(); FileItemIterator iter = upload.getItemIterator(clientRequest); while (iter.hasNext()) { FileItemStream item = iter.next(); String name = item.getFieldName(); if (item.isFormField()) { postMethod.addParameter(name, Streams.asString(item.openStream())); } else { postMethod.setRequestEntity(new InputStreamRequestEntity(item.openStream())); } } upon executing the post method, the following exception is thrown: java.lang.IllegalStateException: Content must be set before entity is written at org.apache.commons.httpclient.methods.InputStreamRequestEntity.writeRequ est(InputStreamRequestEntity.java:176) at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequest Body(EntityEnclosingMethod.java:495) at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase .java:1973) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java :993) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMe thodDirector.java:397) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMetho dDirector.java:170) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:3 96) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:3 24) i'm obviously doing something wrong ;-) .. could someone help me understand what? thanks in advance for any hint! cheers alessandro