Class RequestParam


  • @ProviderType
    public final class RequestParam
    extends java.lang.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 java.lang.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 java.lang.String get​(@NotNull java.util.Map<java.lang.String,​java.lang.String[]> requestMap, @NotNull java.lang.String param)
      Returns a request parameter.
      In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      static @Nullable java.lang.String get​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter.
      In addition the method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      static @Nullable java.lang.String get​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, @Nullable java.lang.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 java.lang.String param)
      Returns a request parameter as boolean.
      static boolean getBoolean​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, boolean defaultValue)
      Returns a request parameter as boolean.
      static double getDouble​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter as double.
      static double getDouble​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, double defaultValue)
      Returns a request parameter as double.
      static <T extends java.lang.Enum>
      T
      getEnum​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, @NotNull java.lang.Class<T> enumClass)
      Returns a request parameter as enum value.
      static <T extends java.lang.Enum>
      T
      getEnum​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, @NotNull java.lang.Class<T> enumClass, T defaultValue)
      Returns a request parameter as enum value.
      static float getFloat​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter as float.
      static float getFloat​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, float defaultValue)
      Returns a request parameter as float.
      static int getInt​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter as integer.
      static int getInt​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, int defaultValue)
      Returns a request parameter as integer.
      static long getLong​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter as long.
      static long getLong​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param, long defaultValue)
      Returns a request parameter as long.
      static java.lang.String @Nullable [] getMultiple​(@NotNull javax.servlet.ServletRequest request, @NotNull java.lang.String param)
      Returns a request parameter array.
      The method fixes problems with incorrect UTF-8 characters returned by the servlet engine.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • PARAMETER_FORMENCODING

        @NotNull
        public static final @NotNull java.lang.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 java.lang.String get​(@NotNull
                                                     @NotNull javax.servlet.ServletRequest request,
                                                     @NotNull
                                                     @NotNull java.lang.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 java.lang.String get​(@NotNull
                                                     @NotNull javax.servlet.ServletRequest request,
                                                     @NotNull
                                                     @NotNull java.lang.String param,
                                                     @Nullable
                                                     @Nullable java.lang.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 java.lang.String @Nullable [] getMultiple​(@NotNull
                                                                @NotNull javax.servlet.ServletRequest request,
                                                                @NotNull
                                                                @NotNull java.lang.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 java.lang.String get​(@NotNull
                                                     @NotNull java.util.Map<java.lang.String,​java.lang.String[]> requestMap,
                                                     @NotNull
                                                     @NotNull java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.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 java.lang.Enum> T getEnum​(@NotNull
                                                           @NotNull javax.servlet.ServletRequest request,
                                                           @NotNull
                                                           @NotNull java.lang.String param,
                                                           @NotNull
                                                           @NotNull java.lang.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 java.lang.Enum> T getEnum​(@NotNull
                                                           @NotNull javax.servlet.ServletRequest request,
                                                           @NotNull
                                                           @NotNull java.lang.String param,
                                                           @NotNull
                                                           @NotNull java.lang.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.