Class RequestParam


  • @ProviderType
    public final class RequestParam
    extends Object
    Several helper methods for getting parameters from the servlet request. This class automatically converts string parameters from ISO-8859-1 to UTF-8, because UTF-8 form data is expected by default. This is only done if no request parameter "_charset_" with an explicit encoding is set. If it is set, the SlingHttpServletRequest automatically converts the parameter data.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static @NotNull String PARAMETER_FORMENCODING
      The name of the form encoding parameter.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static @Nullable String get​(@NotNull Map<String,​String[]> requestMap, @NotNull String param)
      Returns a request parameter.
      In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      static @Nullable String get​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter.
      In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      static @Nullable String get​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, @Nullable String defaultValue)
      Returns a request parameter.
      In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      static boolean getBoolean​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter as boolean.
      static boolean getBoolean​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, boolean defaultValue)
      Returns a request parameter as boolean.
      static double getDouble​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter as double.
      static double getDouble​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, double defaultValue)
      Returns a request parameter as double.
      static <T extends Enum>
      T
      getEnum​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, @NotNull Class<T> enumClass)
      Returns a request parameter as enum value.
      static <T extends Enum>
      T
      getEnum​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, @NotNull Class<T> enumClass, T defaultValue)
      Returns a request parameter as enum value.
      static float getFloat​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter as float.
      static float getFloat​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, float defaultValue)
      Returns a request parameter as float.
      static int getInt​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter as integer.
      static int getInt​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, int defaultValue)
      Returns a request parameter as integer.
      static long getLong​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter as long.
      static long getLong​(@NotNull javax.servlet.ServletRequest request, @NotNull String param, long defaultValue)
      Returns a request parameter as long.
      static String @Nullable [] getMultiple​(@NotNull javax.servlet.ServletRequest request, @NotNull String param)
      Returns a request parameter array.
      The method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
    • Field Detail

      • PARAMETER_FORMENCODING

        @NotNull
        public static final @NotNull String PARAMETER_FORMENCODING
        The name of the form encoding parameter. If such a form parameter is set in a request the SlingHttpServletRequest automatically transcodes all parameters to this encoding.
        See Also:
        Constant Field Values
    • Method Detail

      • get

        @Nullable
        public static @Nullable String get​(@NotNull
                                           @NotNull javax.servlet.ServletRequest request,
                                           @NotNull
                                           @NotNull String param)
        Returns a request parameter.
        In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine. All character data is converted from ISO-8859-1 to UTF-8 if not '_charset_' parameter is provided.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or null if it is not set.
      • get

        @Nullable
        public static @Nullable String get​(@NotNull
                                           @NotNull javax.servlet.ServletRequest request,
                                           @NotNull
                                           @NotNull String param,
                                           @Nullable
                                           @Nullable String defaultValue)
        Returns a request parameter.
        In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine. All character data is converted from ISO-8859-1 to UTF-8 if not '_charset_' parameter is provided.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or the default value if it is not set.
      • getMultiple

        public static String @Nullable [] getMultiple​(@NotNull
                                                      @NotNull javax.servlet.ServletRequest request,
                                                      @NotNull
                                                      @NotNull String param)
        Returns a request parameter array.
        The method fixes problems with incorrect UTF-8 characters returned by the servlet engine. All character data is converted from ISO-8859-1 to UTF-8.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value array value or null if it is not set.
      • get

        @Nullable
        public static @Nullable String get​(@NotNull
                                           @NotNull Map<String,​String[]> requestMap,
                                           @NotNull
                                           @NotNull String param)
        Returns a request parameter.
        In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine. All character data is converted from ISO-8859-1 to UTF-8.
        Parameters:
        requestMap - Request Parameter map.
        param - Parameter name.
        Returns:
        Parameter value or null if it is not set.
      • getInt

        public static int getInt​(@NotNull
                                 @NotNull javax.servlet.ServletRequest request,
                                 @NotNull
                                 @NotNull String param)
        Returns a request parameter as integer.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or 0 if it does not exist or is not a number.
      • getInt

        public static int getInt​(@NotNull
                                 @NotNull javax.servlet.ServletRequest request,
                                 @NotNull
                                 @NotNull String param,
                                 int defaultValue)
        Returns a request parameter as integer.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or default value if it does not exist or is not a number.
      • getLong

        public static long getLong​(@NotNull
                                   @NotNull javax.servlet.ServletRequest request,
                                   @NotNull
                                   @NotNull String param)
        Returns a request parameter as long.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or 0 if it does not exist or is not a number.
      • getLong

        public static long getLong​(@NotNull
                                   @NotNull javax.servlet.ServletRequest request,
                                   @NotNull
                                   @NotNull String param,
                                   long defaultValue)
        Returns a request parameter as long.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or default value if it does not exist or is not a number.
      • getFloat

        public static float getFloat​(@NotNull
                                     @NotNull javax.servlet.ServletRequest request,
                                     @NotNull
                                     @NotNull String param)
        Returns a request parameter as float.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or 0 if it does not exist or is not a number.
      • getFloat

        public static float getFloat​(@NotNull
                                     @NotNull javax.servlet.ServletRequest request,
                                     @NotNull
                                     @NotNull String param,
                                     float defaultValue)
        Returns a request parameter as float.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or default value if it does not exist or is not a number.
      • getDouble

        public static double getDouble​(@NotNull
                                       @NotNull javax.servlet.ServletRequest request,
                                       @NotNull
                                       @NotNull String param)
        Returns a request parameter as double.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or 0 if it does not exist or is not a number.
      • getDouble

        public static double getDouble​(@NotNull
                                       @NotNull javax.servlet.ServletRequest request,
                                       @NotNull
                                       @NotNull String param,
                                       double defaultValue)
        Returns a request parameter as double.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or default value if it does not exist or is not a number.
      • getBoolean

        public static boolean getBoolean​(@NotNull
                                         @NotNull javax.servlet.ServletRequest request,
                                         @NotNull
                                         @NotNull String param)
        Returns a request parameter as boolean.
        Parameters:
        request - Request.
        param - Parameter name.
        Returns:
        Parameter value or false if it does not exist or cannot be interpreted as boolean.
      • getBoolean

        public static boolean getBoolean​(@NotNull
                                         @NotNull javax.servlet.ServletRequest request,
                                         @NotNull
                                         @NotNull String param,
                                         boolean defaultValue)
        Returns a request parameter as boolean.
        Parameters:
        request - Request.
        param - Parameter name.
        defaultValue - Default value.
        Returns:
        Parameter value or default value if it does not exist or false if it cannot be interpreted as boolean.
      • getEnum

        @Nullable
        public static <T extends Enum> T getEnum​(@NotNull
                                                 @NotNull javax.servlet.ServletRequest request,
                                                 @NotNull
                                                 @NotNull String param,
                                                 @NotNull
                                                 @NotNull Class<T> enumClass)
        Returns a request parameter as enum value.
        Type Parameters:
        T - Enum type
        Parameters:
        request - Request.
        param - Parameter name.
        enumClass - Enum class
        Returns:
        Parameter value or null if it is not set or an invalid enum value.
      • getEnum

        @Nullable
        public static <T extends Enum> T getEnum​(@NotNull
                                                 @NotNull javax.servlet.ServletRequest request,
                                                 @NotNull
                                                 @NotNull String param,
                                                 @NotNull
                                                 @NotNull Class<T> enumClass,
                                                 @Nullable
                                                 T defaultValue)
        Returns a request parameter as enum value.
        Type Parameters:
        T - Enum type
        Parameters:
        request - Request.
        param - Parameter name.
        enumClass - Enum class
        defaultValue - Default value.
        Returns:
        Parameter value or the default value if it is not set or an invalid enum value.