org.springframework.web.bind
Class ServletRequestUtils

java.lang.Object
  extended by org.springframework.web.bind.ServletRequestUtils

public abstract class ServletRequestUtils
extends java.lang.Object

Parameter extraction methods, for an approach distinct from data binding, in which parameters of specific types are required.

This approach is very useful for simple submissions, where binding request parameters to a command object would be overkill.

Since:
2.0
Author:
Juergen Hoeller, Keith Donald

Nested Class Summary
private static class ServletRequestUtils.BooleanParser
           
private static class ServletRequestUtils.DoubleParser
           
private static class ServletRequestUtils.FloatParser
           
private static class ServletRequestUtils.IntParser
           
private static class ServletRequestUtils.LongParser
           
private static class ServletRequestUtils.ParameterParser<T>
           
private static class ServletRequestUtils.StringParser
           
 
Field Summary
private static ServletRequestUtils.BooleanParser BOOLEAN_PARSER
           
private static ServletRequestUtils.DoubleParser DOUBLE_PARSER
           
private static ServletRequestUtils.FloatParser FLOAT_PARSER
           
private static ServletRequestUtils.IntParser INT_PARSER
           
private static ServletRequestUtils.LongParser LONG_PARSER
           
private static ServletRequestUtils.StringParser STRING_PARSER
           
 
Constructor Summary
ServletRequestUtils()
           
 
Method Summary
static java.lang.Boolean getBooleanParameter(ServletRequest request, java.lang.String name)
          Get a Boolean parameter, or null if not present.
static boolean getBooleanParameter(ServletRequest request, java.lang.String name, boolean defaultVal)
          Get a boolean parameter, with a fallback value.
static boolean[] getBooleanParameters(ServletRequest request, java.lang.String name)
          Get an array of boolean parameters, return an empty array if not found.
static java.lang.Double getDoubleParameter(ServletRequest request, java.lang.String name)
          Get a Double parameter, or null if not present.
static double getDoubleParameter(ServletRequest request, java.lang.String name, double defaultVal)
          Get a double parameter, with a fallback value.
static double[] getDoubleParameters(ServletRequest request, java.lang.String name)
          Get an array of double parameters, return an empty array if not found.
static java.lang.Float getFloatParameter(ServletRequest request, java.lang.String name)
          Get a Float parameter, or null if not present.
static float getFloatParameter(ServletRequest request, java.lang.String name, float defaultVal)
          Get a float parameter, with a fallback value.
static float[] getFloatParameters(ServletRequest request, java.lang.String name)
          Get an array of float parameters, return an empty array if not found.
static java.lang.Integer getIntParameter(ServletRequest request, java.lang.String name)
          Get an Integer parameter, or null if not present.
static int getIntParameter(ServletRequest request, java.lang.String name, int defaultVal)
          Get an int parameter, with a fallback value.
static int[] getIntParameters(ServletRequest request, java.lang.String name)
          Get an array of int parameters, return an empty array if not found.
static java.lang.Long getLongParameter(ServletRequest request, java.lang.String name)
          Get a Long parameter, or null if not present.
static long getLongParameter(ServletRequest request, java.lang.String name, long defaultVal)
          Get a long parameter, with a fallback value.
static long[] getLongParameters(ServletRequest request, java.lang.String name)
          Get an array of long parameters, return an empty array if not found.
static boolean getRequiredBooleanParameter(ServletRequest request, java.lang.String name)
          Get a boolean parameter, throwing an exception if it isn't found or isn't a boolean.
static boolean[] getRequiredBooleanParameters(ServletRequest request, java.lang.String name)
          Get an array of boolean parameters, throwing an exception if not found or one isn't a boolean.
static double getRequiredDoubleParameter(ServletRequest request, java.lang.String name)
          Get a double parameter, throwing an exception if it isn't found or isn't a number.
static double[] getRequiredDoubleParameters(ServletRequest request, java.lang.String name)
          Get an array of double parameters, throwing an exception if not found or one is not a number.
static float getRequiredFloatParameter(ServletRequest request, java.lang.String name)
          Get a float parameter, throwing an exception if it isn't found or isn't a number.
static float[] getRequiredFloatParameters(ServletRequest request, java.lang.String name)
          Get an array of float parameters, throwing an exception if not found or one is not a number.
static int getRequiredIntParameter(ServletRequest request, java.lang.String name)
          Get an int parameter, throwing an exception if it isn't found or isn't a number.
static int[] getRequiredIntParameters(ServletRequest request, java.lang.String name)
          Get an array of int parameters, throwing an exception if not found or one is not a number..
static long getRequiredLongParameter(ServletRequest request, java.lang.String name)
          Get a long parameter, throwing an exception if it isn't found or isn't a number.
static long[] getRequiredLongParameters(ServletRequest request, java.lang.String name)
          Get an array of long parameters, throwing an exception if not found or one is not a number.
static java.lang.String getRequiredStringParameter(ServletRequest request, java.lang.String name)
          Get a String parameter, throwing an exception if it isn't found.
static java.lang.String[] getRequiredStringParameters(ServletRequest request, java.lang.String name)
          Get an array of String parameters, throwing an exception if not found.
static java.lang.String getStringParameter(ServletRequest request, java.lang.String name)
          Get a String parameter, or null if not present.
static java.lang.String getStringParameter(ServletRequest request, java.lang.String name, java.lang.String defaultVal)
          Get a String parameter, with a fallback value.
static java.lang.String[] getStringParameters(ServletRequest request, java.lang.String name)
          Get an array of String parameters, return an empty array if not found.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INT_PARSER

private static final ServletRequestUtils.IntParser INT_PARSER

LONG_PARSER

private static final ServletRequestUtils.LongParser LONG_PARSER

FLOAT_PARSER

private static final ServletRequestUtils.FloatParser FLOAT_PARSER

DOUBLE_PARSER

private static final ServletRequestUtils.DoubleParser DOUBLE_PARSER

BOOLEAN_PARSER

private static final ServletRequestUtils.BooleanParser BOOLEAN_PARSER

STRING_PARSER

private static final ServletRequestUtils.StringParser STRING_PARSER
Constructor Detail

ServletRequestUtils

public ServletRequestUtils()
Method Detail

getIntParameter

public static java.lang.Integer getIntParameter(ServletRequest request,
                                                java.lang.String name)
                                         throws ServletRequestBindingException
Get an Integer parameter, or null if not present. Throws an exception if it the parameter value isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the Integer value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getIntParameter

public static int getIntParameter(ServletRequest request,
                                  java.lang.String name,
                                  int defaultVal)
Get an int parameter, with a fallback value. Never throws an exception. Can pass a distinguished value as default to enable checks of whether it was supplied.

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getIntParameters

public static int[] getIntParameters(ServletRequest request,
                                     java.lang.String name)
Get an array of int parameters, return an empty array if not found.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredIntParameter

public static int getRequiredIntParameter(ServletRequest request,
                                          java.lang.String name)
                                   throws ServletRequestBindingException
Get an int parameter, throwing an exception if it isn't found or isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredIntParameters

public static int[] getRequiredIntParameters(ServletRequest request,
                                             java.lang.String name)
                                      throws ServletRequestBindingException
Get an array of int parameters, throwing an exception if not found or one is not a number..

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getLongParameter

public static java.lang.Long getLongParameter(ServletRequest request,
                                              java.lang.String name)
                                       throws ServletRequestBindingException
Get a Long parameter, or null if not present. Throws an exception if it the parameter value isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the Long value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getLongParameter

public static long getLongParameter(ServletRequest request,
                                    java.lang.String name,
                                    long defaultVal)
Get a long parameter, with a fallback value. Never throws an exception. Can pass a distinguished value as default to enable checks of whether it was supplied.

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getLongParameters

public static long[] getLongParameters(ServletRequest request,
                                       java.lang.String name)
Get an array of long parameters, return an empty array if not found.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredLongParameter

public static long getRequiredLongParameter(ServletRequest request,
                                            java.lang.String name)
                                     throws ServletRequestBindingException
Get a long parameter, throwing an exception if it isn't found or isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredLongParameters

public static long[] getRequiredLongParameters(ServletRequest request,
                                               java.lang.String name)
                                        throws ServletRequestBindingException
Get an array of long parameters, throwing an exception if not found or one is not a number.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getFloatParameter

public static java.lang.Float getFloatParameter(ServletRequest request,
                                                java.lang.String name)
                                         throws ServletRequestBindingException
Get a Float parameter, or null if not present. Throws an exception if it the parameter value isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the Float value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getFloatParameter

public static float getFloatParameter(ServletRequest request,
                                      java.lang.String name,
                                      float defaultVal)
Get a float parameter, with a fallback value. Never throws an exception. Can pass a distinguished value as default to enable checks of whether it was supplied.

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getFloatParameters

public static float[] getFloatParameters(ServletRequest request,
                                         java.lang.String name)
Get an array of float parameters, return an empty array if not found.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredFloatParameter

public static float getRequiredFloatParameter(ServletRequest request,
                                              java.lang.String name)
                                       throws ServletRequestBindingException
Get a float parameter, throwing an exception if it isn't found or isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredFloatParameters

public static float[] getRequiredFloatParameters(ServletRequest request,
                                                 java.lang.String name)
                                          throws ServletRequestBindingException
Get an array of float parameters, throwing an exception if not found or one is not a number.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getDoubleParameter

public static java.lang.Double getDoubleParameter(ServletRequest request,
                                                  java.lang.String name)
                                           throws ServletRequestBindingException
Get a Double parameter, or null if not present. Throws an exception if it the parameter value isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the Double value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getDoubleParameter

public static double getDoubleParameter(ServletRequest request,
                                        java.lang.String name,
                                        double defaultVal)
Get a double parameter, with a fallback value. Never throws an exception. Can pass a distinguished value as default to enable checks of whether it was supplied.

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getDoubleParameters

public static double[] getDoubleParameters(ServletRequest request,
                                           java.lang.String name)
Get an array of double parameters, return an empty array if not found.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredDoubleParameter

public static double getRequiredDoubleParameter(ServletRequest request,
                                                java.lang.String name)
                                         throws ServletRequestBindingException
Get a double parameter, throwing an exception if it isn't found or isn't a number.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredDoubleParameters

public static double[] getRequiredDoubleParameters(ServletRequest request,
                                                   java.lang.String name)
                                            throws ServletRequestBindingException
Get an array of double parameters, throwing an exception if not found or one is not a number.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getBooleanParameter

public static java.lang.Boolean getBooleanParameter(ServletRequest request,
                                                    java.lang.String name)
                                             throws ServletRequestBindingException
Get a Boolean parameter, or null if not present. Throws an exception if it the parameter value isn't a boolean.

Accepts "true", "on", "yes" (any case) and "1" as values for true; treats every other non-empty value as false (i.e. parses leniently).

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the Boolean value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getBooleanParameter

public static boolean getBooleanParameter(ServletRequest request,
                                          java.lang.String name,
                                          boolean defaultVal)
Get a boolean parameter, with a fallback value. Never throws an exception. Can pass a distinguished value as default to enable checks of whether it was supplied.

Accepts "true", "on", "yes" (any case) and "1" as values for true; treats every other non-empty value as false (i.e. parses leniently).

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getBooleanParameters

public static boolean[] getBooleanParameters(ServletRequest request,
                                             java.lang.String name)
Get an array of boolean parameters, return an empty array if not found.

Accepts "true", "on", "yes" (any case) and "1" as values for true; treats every other non-empty value as false (i.e. parses leniently).

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredBooleanParameter

public static boolean getRequiredBooleanParameter(ServletRequest request,
                                                  java.lang.String name)
                                           throws ServletRequestBindingException
Get a boolean parameter, throwing an exception if it isn't found or isn't a boolean.

Accepts "true", "on", "yes" (any case) and "1" as values for true; treats every other non-empty value as false (i.e. parses leniently).

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredBooleanParameters

public static boolean[] getRequiredBooleanParameters(ServletRequest request,
                                                     java.lang.String name)
                                              throws ServletRequestBindingException
Get an array of boolean parameters, throwing an exception if not found or one isn't a boolean.

Accepts "true", "on", "yes" (any case) and "1" as values for true; treats every other non-empty value as false (i.e. parses leniently).

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getStringParameter

public static java.lang.String getStringParameter(ServletRequest request,
                                                  java.lang.String name)
                                           throws ServletRequestBindingException
Get a String parameter, or null if not present.

Parameters:
request - current HTTP request
name - the name of the parameter
Returns:
the String value, or null if not present
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getStringParameter

public static java.lang.String getStringParameter(ServletRequest request,
                                                  java.lang.String name,
                                                  java.lang.String defaultVal)
Get a String parameter, with a fallback value. Never throws an exception. Can pass a distinguished value to default to enable checks of whether it was supplied.

Parameters:
request - current HTTP request
name - the name of the parameter
defaultVal - the default value to use as fallback

getStringParameters

public static java.lang.String[] getStringParameters(ServletRequest request,
                                                     java.lang.String name)
Get an array of String parameters, return an empty array if not found.

Parameters:
request - current HTTP request
name - the name of the parameter with multiple possible values

getRequiredStringParameter

public static java.lang.String getRequiredStringParameter(ServletRequest request,
                                                          java.lang.String name)
                                                   throws ServletRequestBindingException
Get a String parameter, throwing an exception if it isn't found.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught

getRequiredStringParameters

public static java.lang.String[] getRequiredStringParameters(ServletRequest request,
                                                             java.lang.String name)
                                                      throws ServletRequestBindingException
Get an array of String parameters, throwing an exception if not found.

Parameters:
request - current HTTP request
name - the name of the parameter
Throws:
ServletRequestBindingException - a subclass of ServletException, so it doesn't need to be caught