@Override public void init(FilterConfig fc) { super.init(fc); this.filterConfig = fc; containerTweaks = new ContainerTweaks(); Config config = new Config(fc); // DefaultFactory defaultFactory = new DefaultFactory(config); Grails5535Factory defaultFactory = new Grails5535Factory(config); // TODO revert once Sitemesh bug is fixed fc.getServletContext().setAttribute(FACTORY_SERVLET_CONTEXT_ATTRIBUTE, defaultFactory); defaultFactory.refresh(); FactoryHolder.setFactory(defaultFactory); contentProcessor = new PageParser2ContentProcessor(defaultFactory); decoratorMapper = defaultFactory.getDecoratorMapper(); applicationContext = WebApplicationContextUtils.getRequiredWebApplicationContext(fc.getServletContext()); layoutViewResolver = WebUtils.lookupViewResolver(applicationContext); final GrailsApplication grailsApplication = GrailsWebUtil.lookupApplication(fc.getServletContext()); String encoding = (String) grailsApplication.getFlatConfig().get(CONFIG_OPTION_GSP_ENCODING); if (encoding != null) { defaultEncoding = encoding; } Map<String, PersistenceContextInterceptor> interceptors = applicationContext.getBeansOfType(PersistenceContextInterceptor.class); if (!interceptors.isEmpty()) { persistenceInterceptor = interceptors.values().iterator().next(); } }
@Override protected void initStrategies(ApplicationContext context) { super.initStrategies(context); initLocaleResolver(context); layoutViewResolver = WebUtils.lookupViewResolver(context); }