public class HttpMessage
extends java.lang.Object
It can be used like this:
URL url = new URL(getCodeBase(), "/servlet/ServletName"); HttpMessage msg = new HttpMessage(url); // Parameters may optionally be set using java.util.Properties Properties props = new Properties(); props.put("name", "value"); // Headers, cookies, and authorization may be set as well msg.setHeader("Accept", "image/png"); // optional msg.setCookie("JSESSIONID", "9585155923883872"); // optional msg.setAuthorization("guest", "try2gueSS"); // optional InputStream in = msg.sendGetMessage(props);
This class is loosely modeled after the ServletMessage class written by Rod McChesney of JavaSoft.
Constructor and Description |
---|
HttpMessage(java.net.URL servlet)
Constructs a new HttpMessage that can be used to communicate with the
servlet at the specified URL.
|
Modifier and Type | Method and Description |
---|---|
java.io.InputStream |
sendGetMessage()
Performs a GET request to the servlet, with no query string.
|
java.io.InputStream |
sendGetMessage(java.util.Properties args)
Performs a GET request to the servlet, building
a query string from the supplied properties list.
|
java.io.InputStream |
sendPostMessage()
Performs a POST request to the servlet, with no query string.
|
java.io.InputStream |
sendPostMessage(java.util.Properties args)
Performs a POST request to the servlet, building
post data from the supplied properties list.
|
java.io.InputStream |
sendPostMessage(java.io.Serializable obj)
Performs a POST request to the servlet, uploading a serialized object.
|
void |
setAuthorization(java.lang.String name,
java.lang.String password)
Sets the authorization information for the request (using BASIC
authentication via the HTTP Authorization header).
|
void |
setCookie(java.lang.String name,
java.lang.String value)
Sets a request cookie with the given name and value.
|
void |
setHeader(java.lang.String name,
java.lang.String value)
Sets a request header with the given name and value.
|
public HttpMessage(java.net.URL servlet)
servlet
- the server resource (typically a servlet) with which
to communicatepublic java.io.InputStream sendGetMessage() throws java.io.IOException
java.io.IOException
- if an I/O error occurspublic java.io.InputStream sendGetMessage(java.util.Properties args) throws java.io.IOException
args
- the properties list from which to build a query stringjava.io.IOException
- if an I/O error occurspublic java.io.InputStream sendPostMessage() throws java.io.IOException
java.io.IOException
- if an I/O error occurspublic java.io.InputStream sendPostMessage(java.util.Properties args) throws java.io.IOException
args
- the properties list from which to build the post datajava.io.IOException
- if an I/O error occurspublic java.io.InputStream sendPostMessage(java.io.Serializable obj) throws java.io.IOException
The servlet can receive the object in its doPost() method like this:
ObjectInputStream objin = new ObjectInputStream(req.getInputStream()); Object obj = objin.readObject();The type of the uploaded object can be determined through introspection.
obj
- the serializable object to uploadjava.io.IOException
- if an I/O error occurspublic void setHeader(java.lang.String name, java.lang.String value)
name
- the header namevalue
- the header valuepublic void setCookie(java.lang.String name, java.lang.String value)
name
- the header namevalue
- the header valuepublic void setAuthorization(java.lang.String name, java.lang.String password)
name
- the user namepassword
- the user password