RequestAttributes interface.
Accesses objects from servlet request and HTTP session scope, with no distinction between "session" and "global session".
jakarta.servlet.ServletRequest#getAttribute , jakarta.servlet.http.HttpSession#getAttribute
| Modifier and Type | Field and Description |
|---|---|
| public static final String | DESTRUCTION_CALLBACK_NAME_PREFIX
Constant identifying the |
| protected static final Set | |
| private final HttpServletRequest | |
| private HttpServletResponse | |
| private volatile HttpSession | |
| private final Map |
| Access | Constructor and Description |
|---|---|
| public | ServletRequestAttributes(HttpServletRequest
current HTTP request request)Create a new ServletRequestAttributes instance for the given request. |
| public | ServletRequestAttributes(HttpServletRequest
current HTTP request request, HttpServletResponse current HTTP response (for optional exposure) response)Create a new ServletRequestAttributes instance for the given request. |
| Modifier and Type | Method and Description |
|---|---|
| public Object | getAttribute(String
the name of the attribute name, int the scope identifier scope)Implements org. Return the value for the scoped attribute of the given name, if any. |
| public String[] | getAttributeNames(int
the scope identifier scope)Implements org. Retrieve the names of all attributes in the scope. |
| public final HttpServletRequest | |
| public final HttpServletResponse | |
| protected final HttpSession | getSession(boolean
whether to allow creation of a new session if none exists yet allowCreate)Exposes the |
| public String | getSessionId()
Implements org. Return an id for the current underlying session. |
| public Object | getSessionMutex()
Implements org. Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session. |
| protected boolean | Returns: true if the value is to be considered as immutable for the
purposes of session attribute management; false otherwisethe name of the attribute name, Object the corresponding value to check value)Determine whether the given value is to be considered as an immutable session
attribute, that is, doesn't have to be re-set via |
| private HttpSession | |
| public void | registerDestructionCallback(String
the name of the attribute to register the callback for name, Runnable the destruction callback to be executed callback, int the scope identifier scope)Implements org. Register a callback to be executed on destruction of the specified attribute in the given scope. |
| protected void | registerSessionDestructionCallback(String
the name of the attribute to register the callback for name, Runnable the callback to be executed for destruction callback)Register the given callback as to be executed after session termination. |
| public void | removeAttribute(String
the name of the attribute name, int the scope identifier scope)Implements org. Remove the scoped attribute of the given name, if it exists. |
| public Object | resolveReference(String
the contextual key key)Implements org. Resolve the contextual reference for the given key, if any. |
| public void | setAttribute(String
the name of the attribute name, Object the value for the attribute value, int the scope identifier scope)Implements org. Set the value for the scoped attribute of the given name, replacing an existing value (if any). |
| public String | |
| protected void | updateAccessedSessionAttributes()
Implements abstract org. Update all accessed session attributes through |
| DESTRUCTION_CALLBACK_NAME_PREFIX | back to summary |
|---|---|
| public static final String DESTRUCTION_CALLBACK_NAME_PREFIX Constant identifying the | |
| immutableValueTypes | back to summary |
|---|---|
| protected static final Set<Class<?>> immutableValueTypes | |
| request | back to summary |
|---|---|
| private final HttpServletRequest request | |
| response | back to summary |
|---|---|
| private HttpServletResponse response
| |
| session | back to summary |
|---|---|
| private volatile HttpSession session
| |
| sessionAttributesToUpdate | back to summary |
|---|---|
| private final Map<String, Object> sessionAttributesToUpdate | |
| ServletRequestAttributes | back to summary |
|---|---|
| public ServletRequestAttributes(HttpServletRequest request) Create a new ServletRequestAttributes instance for the given request.
| |
| ServletRequestAttributes | back to summary |
|---|---|
| public ServletRequestAttributes(HttpServletRequest request, HttpServletResponse response) Create a new ServletRequestAttributes instance for the given request.
| |
| getAttribute | back to summary |
|---|---|
| public Object getAttribute(String name, int scope) Implements org. Doc from org. Return the value for the scoped attribute of the given name, if any. | |
| getAttributeNames | back to summary |
|---|---|
| public String[] getAttributeNames(int scope) Implements org. Doc from org. Retrieve the names of all attributes in the scope. | |
| getRequest | back to summary |
|---|---|
| public final HttpServletRequest getRequest() Exposes the native | |
| getResponse | back to summary |
|---|---|
| public final HttpServletResponse getResponse() Exposes the native
| |
| getSession | back to summary |
|---|---|
| protected final HttpSession getSession(boolean allowCreate) Exposes the
| |
| getSessionId | back to summary |
|---|---|
| public String getSessionId() Implements org. Doc from org. Return an id for the current underlying session. | |
| getSessionMutex | back to summary |
|---|---|
| public Object getSessionMutex() Implements org. Doc from org. Expose the best available mutex for the underlying session: that is, an object to synchronize on for the underlying session. | |
| isImmutableSessionAttribute | back to summary |
|---|---|
| protected boolean isImmutableSessionAttribute(String name, Object value) Determine whether the given value is to be considered as an immutable session
attribute, that is, doesn't have to be re-set via The default implementation returns
| |
| obtainSession | back to summary |
|---|---|
| private HttpSession obtainSession() | |
| registerDestructionCallback | back to summary |
|---|---|
| public void registerDestructionCallback(String name, Runnable callback, int scope) Implements org. Doc from org. Register a callback to be executed on destruction of the specified attribute in the given scope. Implementations should do their best to execute the callback at the appropriate time: that is, at request completion or session termination, respectively. If such a callback is not supported by the underlying runtime environment, the callback must be ignored and a corresponding warning should be logged. Note that 'destruction' usually corresponds to destruction of the
entire scope, not to the individual attribute having been explicitly
removed by the application. If an attribute gets removed via this
facade's Note Callback objects should generally be serializable if they are being registered for a session scope. Otherwise the callback (or even the entire session) might not survive web app restarts. | |
| registerSessionDestructionCallback | back to summary |
|---|---|
| protected void registerSessionDestructionCallback(String name, Runnable callback) Register the given callback as to be executed after session termination. Note The callback object should be serializable in order to survive web app restarts. | |
| removeAttribute | back to summary |
|---|---|
| public void removeAttribute(String name, int scope) Implements org. Doc from org. Remove the scoped attribute of the given name, if it exists. Note that an implementation should also remove a registered destruction callback for the specified attribute, if any. It does, however, not need to execute a registered destruction callback in this case, since the object will be destroyed by the caller (if appropriate). | |
| resolveReference | back to summary |
|---|---|
| public Object resolveReference(String key) Implements org. Doc from org. Resolve the contextual reference for the given key, if any. At a minimum: the HttpServletRequest reference for key "request", and the HttpSession reference for key "session". | |
| setAttribute | back to summary |
|---|---|
| public void setAttribute(String name, Object value, int scope) Implements org. Doc from org. Set the value for the scoped attribute of the given name, replacing an existing value (if any). | |
| toString | back to summary |
|---|---|
| public String toString() Overrides java. Doc from java. Returns a string representation of the object.
Satisfying this method's contract implies a non- | |
| updateAccessedSessionAttributes | back to summary |
|---|---|
| protected void updateAccessedSessionAttributes() Implements abstract org. Update all accessed session attributes through
| |