public interface HttpServiceExtension
extends org.osgi.service.http.HttpService
HttpService interface allowing the
registration/unregistration of Servlet Filter instances.| Modifier and Type | Method and Description |
|---|---|
void |
registerFilter(javax.servlet.Filter filter,
String urlPattern,
Dictionary initParams,
org.osgi.service.http.HttpContext context)
Registers a
Filter and with the HttpService. |
void |
unregisterFilter(javax.servlet.Filter filter)
Removes the specified
Filter from the service. |
void registerFilter(javax.servlet.Filter filter,
String urlPattern,
Dictionary initParams,
org.osgi.service.http.HttpContext context)
throws javax.servlet.ServletException
Filter and with the HttpService.
As this is an extension to the standard HttpService and there
are no clear rules on how the mapping of filters should occur,
this implementation follows the mapping rules as defined by the Servlet
specification.
Additionally, it should be noted that the registered Filters are
effectively associated with a particular HttpContext. Therefore,
if you wish to have multiple filters associated with a particular
Servlet, then you should use the same HttpContext
instance to perform the registration.
Filters will be invoked in registration order.
This method will invoke Filter.init(javax.servlet.FilterConfig) during
the registration process.
When registering a Filter, take care not to reuse the same Filter
instance across multiple registration invocations. This could cause issues
when removing the Filter as it may remove more url matching possibilities
than intended.filter - the Filter to register.urlPattern - the url pattern that will invoke this Filter.initParams - the initialization params that will be passed to the
filter when Filter.init(javax.servlet.FilterConfig)
is invoked.context - the HttpContext associated with this Filter.javax.servlet.ServletException - if an error occurs during Filter initialization.void unregisterFilter(javax.servlet.Filter filter)
Filter from the service.filter - the Filter to remove.Copyright © 2020 Oracle Corporation. All Rights Reserved.