Interface SlingHttpServletRequest
-
- All Superinterfaces:
Adaptable
,HttpServletRequest
,ServletRequest
- All Known Implementing Classes:
FormsHandlingRequest
,RedirectRequest
,SlingHttpServletRequestWrapper
@ProviderType public interface SlingHttpServletRequest extends HttpServletRequest, Adaptable
TheSlingHttpServletRequest
defines the interface to provide client request information to a servlet.Request Parameters Generally request parameters are transmitted as part of the URL string such as
GET /some/path?param=value
or as request data of content type application/x-www-form-urlencoded or multipart/form-data. The Sling Framework must decode parameters transferred as request data and make them available through the various parameter accessor methods. Generally parameters transferred as multipart/form-data will be accessed by one of the methods returningRequestParameter
instances.In any case, the
ServletRequest.getReader()
andServletRequest.getInputStream()
methods will throw anIllegalStateException
if called after any methods returning request parameters if the request content type is either application/x-www-form-urlencoded or multipart/form-data because the request data has already been processed.Starting with Sling API 2.0.6, this interface als extends the
Adaptable
interface.
-
-
Field Summary
-
Fields inherited from interface javax.servlet.http.HttpServletRequest
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description @Nullable Cookie
getCookie(java.lang.String name)
Returns the named cookie from the HTTP request ornull
if no such cookie exists in the request.@Nullable RequestDispatcher
getRequestDispatcher(@NotNull java.lang.String path, RequestDispatcherOptions options)
Returns aRequestDispatcher
object that acts as a wrapper for the resource located at the given path.@Nullable RequestDispatcher
getRequestDispatcher(@NotNull Resource resource)
Same asgetRequestDispatcher(Resource,RequestDispatcherOptions)
but using empty options.@Nullable RequestDispatcher
getRequestDispatcher(@NotNull Resource resource, RequestDispatcherOptions options)
Returns aRequestDispatcher
object that acts as a wrapper for the resource located at the given resource.@Nullable RequestParameter
getRequestParameter(@NotNull java.lang.String name)
Returns the value of a request parameter as aRequestParameter
, ornull
if the parameter does not exist.@NotNull java.util.List<RequestParameter>
getRequestParameterList()
Returns the request parameters as instances of theRequestParameter
interface in the order or the request where the query string parameters are first and the POST request parameters are second.@NotNull RequestParameterMap
getRequestParameterMap()
Returns aMap
of the parameters of this request.@Nullable RequestParameter[]
getRequestParameters(@NotNull java.lang.String name)
Returns an array ofRequestParameter
objects containing all of the values the given request parameter has, ornull
if the parameter does not exist.@NotNull RequestPathInfo
getRequestPathInfo()
Returns theRequestPathInfo
pertaining to this request.@NotNull RequestProgressTracker
getRequestProgressTracker()
Returns theRequestProgressTracker
of this request.@NotNull Resource
getResource()
Returns theResource
object on whose behalf the servlet acts.@Nullable java.util.ResourceBundle
getResourceBundle(java.lang.String baseName, java.util.Locale locale)
Returns the resource bundle of the given base name for the given locale.@Nullable java.util.ResourceBundle
getResourceBundle(java.util.Locale locale)
Returns the resource bundle for the given locale.@NotNull ResourceResolver
getResourceResolver()
Returns theResourceResolver
which resolved theresource
of this request.@Nullable java.lang.String
getResponseContentType()
Returns the framework preferred content type for the response.@NotNull java.util.Enumeration<java.lang.String>
getResponseContentTypes()
Gets a list of content types which the framework accepts for the response.-
Methods inherited from interface javax.servlet.http.HttpServletRequest
authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isUserInRole, login, logout, upgrade
-
Methods inherited from interface javax.servlet.ServletRequest
getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
-
-
-
-
Method Detail
-
getResource
@NotNull @NotNull Resource getResource()
Returns theResource
object on whose behalf the servlet acts.- Returns:
- The
Resource
object of this request.
-
getResourceResolver
@NotNull @NotNull ResourceResolver getResourceResolver()
Returns theResourceResolver
which resolved theresource
of this request.- Returns:
- The resource resolver
-
getRequestPathInfo
@NotNull @NotNull RequestPathInfo getRequestPathInfo()
Returns theRequestPathInfo
pertaining to this request.- Returns:
- the request path info.
-
getRequestParameter
@Nullable @Nullable RequestParameter getRequestParameter(@NotNull @NotNull java.lang.String name)
Returns the value of a request parameter as aRequestParameter
, ornull
if the parameter does not exist.This method should only be used if the parameter has only one value. If the parameter might have more than one value, use
getRequestParameters(String)
.If this method is used with a multivalued parameter, the value returned is equal to the first value in the array returned by
getRequestParameters
.This method is a shortcut for
getRequestParameterMap().getValue(String)
.- Parameters:
name
- aString
specifying the name of the parameter- Returns:
- a
RequestParameter
representing the single value of the parameter - Throws:
java.lang.IllegalArgumentException
- if name isnull
.- See Also:
getRequestParameters(String)
,RequestParameterMap.getValue(String)
-
getRequestParameters
@Nullable @Nullable RequestParameter[] getRequestParameters(@NotNull @NotNull java.lang.String name)
Returns an array ofRequestParameter
objects containing all of the values the given request parameter has, ornull
if the parameter does not exist.If the parameter has a single value, the array has a length of 1.
This method is a shortcut for
getRequestParameterMap().getValues(String)
.- Parameters:
name
- aString
containing the name of the parameter the value of which is requested- Returns:
- an array of
RequestParameter
objects containing the parameter values. - Throws:
java.lang.IllegalArgumentException
- if name isnull
.- See Also:
getRequestParameter(String)
,RequestParameterMap.getValues(String)
-
getRequestParameterMap
@NotNull @NotNull RequestParameterMap getRequestParameterMap()
Returns aMap
of the parameters of this request.The values in the returned
Map
are from typeRequestParameter
array (RequestParameter[]
).If no parameters exist this method returns an empty
Map
.- Returns:
- an immutable
Map
containing parameter names as keys and parameter values as map values, or an emptyMap
if no parameters exist. The keys in the parameter map are of type String. The values in the parameter map are of typeRequestParameter
array (RequestParameter[]
).
-
getRequestParameterList
@NotNull @NotNull java.util.List<RequestParameter> getRequestParameterList()
Returns the request parameters as instances of theRequestParameter
interface in the order or the request where the query string parameters are first and the POST request parameters are second.- Returns:
- The list of
RequestParameter
in request declaration order. - Since:
- 2.3 (Sling API Bundle 2.6.0)
-
getRequestDispatcher
@Nullable @Nullable RequestDispatcher getRequestDispatcher(@NotNull @NotNull java.lang.String path, RequestDispatcherOptions options)
Returns aRequestDispatcher
object that acts as a wrapper for the resource located at the given path. ARequestDispatcher
object can be used to include the resource in a response.Returns
null
if aRequestDispatcher
cannot be returned for any reason.- Parameters:
path
- aString
specifying the pathname to the resource. If it is relative, it must be relative against the current servlet.options
- influence the rendering of the included Resource- Returns:
- a
RequestDispatcher
object that acts as a wrapper for theresource
ornull
if an error occurs preparing the dispatcher.
-
getRequestDispatcher
@Nullable @Nullable RequestDispatcher getRequestDispatcher(@NotNull @NotNull Resource resource, RequestDispatcherOptions options)
Returns aRequestDispatcher
object that acts as a wrapper for the resource located at the given resource. ARequestDispatcher
object can be used to include the resource in a response.Returns
null
if aRequestDispatcher
cannot be returned for any reason.- Parameters:
resource
- TheResource
instance whose response content may be included by the returned dispatcher.options
- influence the rendering of the included Resource- Returns:
- a
RequestDispatcher
object that acts as a wrapper for theresource
ornull
if an error occurs preparing the dispatcher.
-
getRequestDispatcher
@Nullable @Nullable RequestDispatcher getRequestDispatcher(@NotNull @NotNull Resource resource)
Same asgetRequestDispatcher(Resource,RequestDispatcherOptions)
but using empty options.- Parameters:
resource
- TheResource
instance whose response content may be included by the returned dispatcher.- Returns:
- a
RequestDispatcher
object that acts as a wrapper for theresource
ornull
if an error occurs preparing the dispatcher.
-
getCookie
@Nullable @Nullable Cookie getCookie(java.lang.String name)
Returns the named cookie from the HTTP request ornull
if no such cookie exists in the request.- Parameters:
name
- The name of the cookie to return.- Returns:
- The named cookie or
null
if no such cookie exists.
-
getResponseContentType
@Nullable @Nullable java.lang.String getResponseContentType()
Returns the framework preferred content type for the response. The content type only includes the MIME type, not the character set.For included resources this method will returned the same string as returned by the
ServletResponse.getContentType()
without the character set.- Returns:
- preferred MIME type of the response
-
getResponseContentTypes
@NotNull @NotNull java.util.Enumeration<java.lang.String> getResponseContentTypes()
Gets a list of content types which the framework accepts for the response. This list is ordered with the most preferable types listed first. The content type only includes the MIME type, not the character set.For included resources this method will returned an enumeration containing a single entry which is the same string as returned by the
ServletResponse.getContentType()
without the character set.- Returns:
- ordered list of MIME types for the response
-
getResourceBundle
@Nullable @Nullable java.util.ResourceBundle getResourceBundle(java.util.Locale locale)
Returns the resource bundle for the given locale.- Parameters:
locale
- the locale for which to retrieve the resource bundle. If this isnull
, the locale returned byServletRequest.getLocale()
is used to select the resource bundle.- Returns:
- the resource bundle for the given locale
-
getResourceBundle
@Nullable @Nullable java.util.ResourceBundle getResourceBundle(java.lang.String baseName, java.util.Locale locale)
Returns the resource bundle of the given base name for the given locale.- Parameters:
baseName
- The base name of the resource bundle to returned. If this parameter isnull
, the same resource bundle must be returned as if thegetResourceBundle(Locale)
method is called.locale
- the locale for which to retrieve the resource bundle. If this isnull
, the locale returned byServletRequest.getLocale()
is used to select the resource bundle.- Returns:
- the resource bundle for the given locale
-
getRequestProgressTracker
@NotNull @NotNull RequestProgressTracker getRequestProgressTracker()
Returns theRequestProgressTracker
of this request.- Returns:
- The request progress tracker.
-
-