|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity
public class MultipartRequestEntity
Implements a request entity suitable for an HTTP multipart POST method.
The HTTP multipart POST method is defined in section 3.3 of RFC1867:
The media-type multipart/form-data follows the rules of all multipart MIME data streams as outlined in RFC 1521. The multipart/form-data contains a series of parts. Each part is expected to contain a content-disposition header where the value is "form-data" and a name attribute specifies the field name within the form, e.g., 'content-disposition: form-data; name="xxxxx"', where xxxxx is the field name corresponding to that field. Field names originally in non-ASCII character sets may be encoded using the method outlined in RFC 1522.
This entity is designed to be used in conjunction with the
post method
to provide
multipart posts. Example usage:
File f = new File("/path/fileToUpload.txt");
PostMethod filePost = new PostMethod("http://host/some_path");
Part[] parts = {
new StringPart("param_name", "value"),
new FilePart(f.getName(), f)
};
filePost.setRequestEntity(
new MultipartRequestEntity(parts, filePost.getParams())
);
HttpClient client = new HttpClient();
int status = client.executeMethod(filePost);
Field Summary | |
---|---|
protected Part[] |
parts
The MIME parts as set by the constructor |
Constructor Summary | |
---|---|
MultipartRequestEntity(Part[] parts,
HttpMethodParams params)
Creates a new multipart entity containing the given parts. |
Method Summary | |
---|---|
long |
getContentLength()
Gets the request entity's length. |
String |
getContentType()
Gets the entity's content type. |
protected byte[] |
getMultipartBoundary()
Returns the MIME boundary string that is used to demarcate boundaries of this part. |
boolean |
isRepeatable()
Returns true if all parts are repeatable, false otherwise. |
void |
writeRequest(OutputStream out)
Writes the request entity to the given stream. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected Part[] parts
Constructor Detail |
---|
public MultipartRequestEntity(Part[] parts, HttpMethodParams params)
parts
- The parts to include.params
- The params of the HttpMethod using this entity.Method Detail |
---|
protected byte[] getMultipartBoundary()
public boolean isRepeatable()
true
if all parts are repeatable, false
otherwise.
isRepeatable
in interface RequestEntity
OutputStream
more than once,
false otherwise.RequestEntity.isRepeatable()
public void writeRequest(OutputStream out) throws IOException
writeRequest
in interface RequestEntity
IOException
public long getContentLength()
EntityEnclosingMethod
will use chunk encoding to
transmit the request entity.
getContentLength
in interface RequestEntity
public String getContentType()
getContentType
in interface RequestEntity
HttpMethod.setRequestHeader(String, String)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |