|
Page Created :
WICKET :
WicketApplicationFilter
WicketApplicationFilter has been created by Erik van Oosten (Apr 19, 2008). Content:See parent page to see what this code is about. package com.example.wicket.filter;import org.apache.wicket.Application; import org.apache.wicket.protocol.http.WebApplication; import javax.servlet.*; import java.io.IOException; /** * Filter that sets the wicket application, just like [EMAIL PROTECTED] org.apache.wicket.protocol.http.WicketFilter} * would do. * * <p>This implementation assumes that it is placed in a filter chain, <i>after</i> WicketFilter, * for URLs that are not handled by the WicketFilter. * * <p>The filter name of the wicket filter is retrieved from the init parameter wicketFilterName. * * @author Erik van Oosten */ public class WicketApplicationFilter implements Filter { private WebApplication webApplication; public void init(FilterConfig filterConfig) throws ServletException { // Get instance of the Wicket application, it is set by the Wicket filter. String contextKey = "wicket:" + filterConfig.getInitParameter("wicketFilterName"); webApplication = (WebApplication) filterConfig.getServletContext().getAttribute(contextKey); if (webApplication == null) { throw new ServletException("Could not find the Wicket application, please make " + "sure filter WicketApplicationFilter is embedded in Wicket's filter"); } } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { try { // Set the webapplication for this thread Application.set(webApplication); chain.doFilter(request, response); } finally { // always unset the application thread local Application.unset(); } } public void destroy() { webApplication = null; } } |
Powered by
Atlassian Confluence
(Version: 2.2.9 Build:#527 Sep 07, 2006)
-
Bug/feature request
Unsubscribe or edit your notifications preferences
Unsubscribe or edit your notifications preferences
