3 import javax.servlet.http.HttpServletRequest;
5 public class HTTPRequestParser {
6 private HttpServletRequest request;
7 private String encoding;
9 public HTTPRequestParser(HttpServletRequest aRequest) {
10 this(aRequest, aRequest.getCharacterEncoding());
13 public HTTPRequestParser(HttpServletRequest aRequest, String anEncoding) {
15 encoding = anEncoding;
18 public boolean hasParameter(String aName) {
19 return request.getParameter(aName)!=null;
22 public String getParameterWithDefault(String aName, String aDefault) {
23 if (hasParameter(aName))
24 return getParameter(aName);
29 public String getParameter(String aName) {
31 String result = request.getParameter(aName);
32 String requestEncoding = request.getCharacterEncoding();
33 if (requestEncoding==null)
34 requestEncoding = "ISO-8859-1";
36 if (result != null && encoding!=null && !encoding.equals(requestEncoding)) {
37 result = new String(result.getBytes(requestEncoding), encoding);
43 throw new RuntimeException("HTTPRequestParser.getParameter: " + t.getMessage());
47 public int getIntegerWithDefault(String aName, int aDefault) {
48 int result = aDefault;
49 String value = getParameter(aName);
52 result = Integer.parseInt(value);