public class SlingServletContext extends Object implements javax.servlet.ServletContext
SlingServletContext
class is the ServletContext
which is registered as a service usable by servlets and helpers inside Sling.
Most methods just call into the servlet context in which the
SlingMainServlet
is running.
SlingMainServlet
for
MIME type mapping.ResourceResolver
.getRequestDispatcher(String)
method returns a
SlingRequestDispatcher
which may dispatch a request inside sling
without going through the servlet container. The
getNamedDispatcher(String)
method returns a servlet container
request dispatcher which always goes through the servlet container.SlingMainServlet
is running.
This class implements the Servlet API 2.5 ServletContext
interface.
See SlingServletContext3
for the Servlet API 3 implementation.
Constructor and Description |
---|
SlingServletContext(org.osgi.framework.BundleContext bundleContext,
SlingMainServlet slingMainServlet)
Creates an instance of this class delegating some methods to the given
SlingMainServlet . |
Modifier and Type | Method and Description |
---|---|
javax.servlet.FilterRegistration.Dynamic |
addFilter(String filterName,
Class<? extends javax.servlet.Filter> filterClass) |
javax.servlet.FilterRegistration.Dynamic |
addFilter(String filterName,
javax.servlet.Filter filter) |
javax.servlet.FilterRegistration.Dynamic |
addFilter(String filterName,
String className) |
void |
addListener(Class<? extends EventListener> listenerClass) |
void |
addListener(String className) |
<T extends EventListener> |
addListener(T t) |
javax.servlet.ServletRegistration.Dynamic |
addServlet(String servletName,
Class<? extends javax.servlet.Servlet> servletClass) |
javax.servlet.ServletRegistration.Dynamic |
addServlet(String servletName,
javax.servlet.Servlet servlet) |
javax.servlet.ServletRegistration.Dynamic |
addServlet(String servletName,
String className) |
<T extends javax.servlet.Filter> |
createFilter(Class<T> clazz) |
<T extends EventListener> |
createListener(Class<T> clazz) |
<T extends javax.servlet.Servlet> |
createServlet(Class<T> clazz) |
void |
declareRoles(String... roleNames) |
void |
dispose()
Unregisters this servlet context as a service (if registered at all)
|
Object |
getAttribute(String name)
Returns the named servlet context attribute.
|
Enumeration<String> |
getAttributeNames()
Returns the names of all servlet context attributes.
|
ClassLoader |
getClassLoader() |
javax.servlet.ServletContext |
getContext(String uripath)
Returns the servlet context from the servlet container in which sling is
running.
|
String |
getContextPath()
Returns the context path of the web application.
|
Set<javax.servlet.SessionTrackingMode> |
getDefaultSessionTrackingModes() |
int |
getEffectiveMajorVersion() |
int |
getEffectiveMinorVersion() |
Set<javax.servlet.SessionTrackingMode> |
getEffectiveSessionTrackingModes() |
javax.servlet.FilterRegistration |
getFilterRegistration(String filterName) |
Map<String,? extends javax.servlet.FilterRegistration> |
getFilterRegistrations() |
String |
getInitParameter(String name)
Returns the init-param of the servlet context in which Sling is
configured.
|
Enumeration<String> |
getInitParameterNames()
Returns the names of the init-params of the servlet context in which
Sling is configured.
|
javax.servlet.descriptor.JspConfigDescriptor |
getJspConfigDescriptor() |
int |
getMajorVersion()
Returns the major version number of the Servlet API supported by the
servlet container in which Sling is running.
|
String |
getMimeType(String file)
Returns a MIME type for the extension of the given file name.
|
int |
getMinorVersion()
Returns the minor version number of the Servlet API supported by the
servlet container in which Sling is running.
|
javax.servlet.RequestDispatcher |
getNamedDispatcher(String name)
Returns a servlet container request dispatcher for the named servlet.
|
String |
getRealPath(String path)
Returns the real file inside the web application to which the given path
maps or
null if no such file exists. |
javax.servlet.RequestDispatcher |
getRequestDispatcher(String path)
Returns a
SlingRequestDispatcher for the given path if not
null . |
URL |
getResource(String path)
Returns the URI for the given path.
|
InputStream |
getResourceAsStream(String path)
Returns an input stream to the given path.
|
Set<String> |
getResourcePaths(String parentPath)
Returns a set of names for path entries considered children of the given
path.
|
String |
getServerInfo()
Returns the Sling server info string.
|
javax.servlet.Servlet |
getServlet(String name)
Deprecated.
|
protected javax.servlet.ServletContext |
getServletContext()
Returns the real servlet context of the servlet container in which the
Sling Servlet is running.
|
String |
getServletContextName()
Returns the name of the servlet context in which Sling is configured.
|
Enumeration<String> |
getServletNames()
Deprecated.
|
javax.servlet.ServletRegistration |
getServletRegistration(String servletName) |
Map<String,? extends javax.servlet.ServletRegistration> |
getServletRegistrations() |
Enumeration<javax.servlet.Servlet> |
getServlets()
Deprecated.
|
javax.servlet.SessionCookieConfig |
getSessionCookieConfig() |
void |
log(Exception exception,
String message)
Deprecated.
|
void |
log(String message)
Logs the message at info level to the logger
|
void |
log(String message,
Throwable throwable)
Logs the message and optional throwable at error level to the logger
|
void |
removeAttribute(String name)
Removes the named servlet context attribute.
|
void |
setAttribute(String name,
Object object)
Sets the name servlet context attribute to the requested value.
|
boolean |
setInitParameter(String name,
String value) |
void |
setSessionTrackingModes(Set<javax.servlet.SessionTrackingMode> sessionTrackingModes) |
protected javax.servlet.ServletContext |
wrapServletContext(javax.servlet.ServletContext context) |
public SlingServletContext(org.osgi.framework.BundleContext bundleContext, SlingMainServlet slingMainServlet)
SlingMainServlet
. In addition the new instance is registered as
aServletContext
.
This method must only be called after the sling main servlet
has been fully initialized. Otherwise the getServletContext()
method may cause a NullPointerException
!
dispose()
public void dispose()
This method must be called before the sling main servlet
is destroyed. Otherwise the getServletContext()
method may
cause a NullPointerException
!
#SlingServletContext(SlingMainServlet)
public String getServletContextName()
ServletContext
in which the
SlingMainServlet
is running.getServletContextName
in interface javax.servlet.ServletContext
public String getContextPath()
getContextPath
in interface javax.servlet.ServletContext
public String getInitParameter(String name)
ServletContext
in
which the SlingMainServlet
is running.getInitParameter
in interface javax.servlet.ServletContext
public Enumeration<String> getInitParameterNames()
ServletContext
in which the SlingMainServlet
is running.getInitParameterNames
in interface javax.servlet.ServletContext
public Object getAttribute(String name)
ServletContext
in which the SlingMainServlet
is
running.getAttribute
in interface javax.servlet.ServletContext
public Enumeration<String> getAttributeNames()
ServletContext
in which the SlingMainServlet
is running.getAttributeNames
in interface javax.servlet.ServletContext
public void removeAttribute(String name)
ServletContext
in which the SlingMainServlet
is
running.removeAttribute
in interface javax.servlet.ServletContext
public void setAttribute(String name, Object object)
ServletContext
in which the
SlingMainServlet
is running.setAttribute
in interface javax.servlet.ServletContext
public String getServerInfo()
getServerInfo
in interface javax.servlet.ServletContext
public int getMajorVersion()
ServletContext
in which the SlingMainServlet
is
running.getMajorVersion
in interface javax.servlet.ServletContext
public int getMinorVersion()
ServletContext
in which the SlingMainServlet
is
running.getMinorVersion
in interface javax.servlet.ServletContext
public String getMimeType(String file)
ServletContext
in which the
SlingMainServlet
is running.getMimeType
in interface javax.servlet.ServletContext
public javax.servlet.RequestDispatcher getRequestDispatcher(String path)
getRequestDispatcher
in interface javax.servlet.ServletContext
public javax.servlet.RequestDispatcher getNamedDispatcher(String name)
ServletContext
in which the
SlingMainServlet
is running.getNamedDispatcher
in interface javax.servlet.ServletContext
public URL getResource(String path) throws MalformedURLException
ServletContext
in which the SlingMainServlet
is
running.getResource
in interface javax.servlet.ServletContext
MalformedURLException
public InputStream getResourceAsStream(String path)
ServletContext
in which the SlingMainServlet
is
running.getResourceAsStream
in interface javax.servlet.ServletContext
public Set<String> getResourcePaths(String parentPath)
ServletContext
in which the
SlingMainServlet
is running.getResourcePaths
in interface javax.servlet.ServletContext
public String getRealPath(String path)
null
if no such file exists. This method calls on
the ServletContext
in which the SlingMainServlet
is running.getRealPath
in interface javax.servlet.ServletContext
public void log(String message, Throwable throwable)
log
in interface javax.servlet.ServletContext
public void log(String message)
log
in interface javax.servlet.ServletContext
@Deprecated public void log(Exception exception, String message)
log
in interface javax.servlet.ServletContext
public javax.servlet.ServletContext getContext(String uripath)
ServletContext
in which
the SlingMainServlet
is running.getContext
in interface javax.servlet.ServletContext
@Deprecated public javax.servlet.Servlet getServlet(String name)
null
as defined in Servlet API 2.4getServlet
in interface javax.servlet.ServletContext
@Deprecated public Enumeration<String> getServletNames()
getServletNames
in interface javax.servlet.ServletContext
@Deprecated public Enumeration<javax.servlet.Servlet> getServlets()
getServlets
in interface javax.servlet.ServletContext
public int getEffectiveMajorVersion()
getEffectiveMajorVersion
in interface javax.servlet.ServletContext
public int getEffectiveMinorVersion()
getEffectiveMinorVersion
in interface javax.servlet.ServletContext
public boolean setInitParameter(String name, String value)
setInitParameter
in interface javax.servlet.ServletContext
public javax.servlet.SessionCookieConfig getSessionCookieConfig()
getSessionCookieConfig
in interface javax.servlet.ServletContext
public void setSessionTrackingModes(Set<javax.servlet.SessionTrackingMode> sessionTrackingModes)
setSessionTrackingModes
in interface javax.servlet.ServletContext
public Set<javax.servlet.SessionTrackingMode> getDefaultSessionTrackingModes()
getDefaultSessionTrackingModes
in interface javax.servlet.ServletContext
public Set<javax.servlet.SessionTrackingMode> getEffectiveSessionTrackingModes()
getEffectiveSessionTrackingModes
in interface javax.servlet.ServletContext
public javax.servlet.descriptor.JspConfigDescriptor getJspConfigDescriptor()
getJspConfigDescriptor
in interface javax.servlet.ServletContext
public ClassLoader getClassLoader()
getClassLoader
in interface javax.servlet.ServletContext
public void declareRoles(String... roleNames)
declareRoles
in interface javax.servlet.ServletContext
public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, String className)
addServlet
in interface javax.servlet.ServletContext
public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, javax.servlet.Servlet servlet)
addServlet
in interface javax.servlet.ServletContext
public javax.servlet.ServletRegistration.Dynamic addServlet(String servletName, Class<? extends javax.servlet.Servlet> servletClass)
addServlet
in interface javax.servlet.ServletContext
public <T extends javax.servlet.Servlet> T createServlet(Class<T> clazz)
createServlet
in interface javax.servlet.ServletContext
public javax.servlet.ServletRegistration getServletRegistration(String servletName)
getServletRegistration
in interface javax.servlet.ServletContext
public Map<String,? extends javax.servlet.ServletRegistration> getServletRegistrations()
getServletRegistrations
in interface javax.servlet.ServletContext
public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, String className)
addFilter
in interface javax.servlet.ServletContext
public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, javax.servlet.Filter filter)
addFilter
in interface javax.servlet.ServletContext
public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, Class<? extends javax.servlet.Filter> filterClass)
addFilter
in interface javax.servlet.ServletContext
public <T extends javax.servlet.Filter> T createFilter(Class<T> clazz)
createFilter
in interface javax.servlet.ServletContext
public javax.servlet.FilterRegistration getFilterRegistration(String filterName)
getFilterRegistration
in interface javax.servlet.ServletContext
public Map<String,? extends javax.servlet.FilterRegistration> getFilterRegistrations()
getFilterRegistrations
in interface javax.servlet.ServletContext
public void addListener(String className)
addListener
in interface javax.servlet.ServletContext
public <T extends EventListener> void addListener(T t)
addListener
in interface javax.servlet.ServletContext
public void addListener(Class<? extends EventListener> listenerClass)
addListener
in interface javax.servlet.ServletContext
public <T extends EventListener> T createListener(Class<T> clazz)
createListener
in interface javax.servlet.ServletContext
protected javax.servlet.ServletContext getServletContext()
protected javax.servlet.ServletContext wrapServletContext(javax.servlet.ServletContext context)
Copyright © 2007–2016 The Apache Software Foundation. All rights reserved.