THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
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 {@link 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; } }