public class SiteMeshFilter extends ConfigurableSiteMeshFilter { @Override protected void applyCustomConfiguration(SiteMeshFilterBuilder builder) { builder.addDecoratorPath("/*","/WEB-INF/jsp/login.jsp"); } }
@Configuration public class WebConfig { @Bean(name="sitemesh3") SiteMeshFilter siteMeshFilter(){ return new SiteMeshFilter(); } @Bean public FilterRegistrationBean filterRegistrationBean(@Qualifier("sitemesh3") SiteMeshFilter siteMeshFilter){ FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(); filterRegistrationBean.setFilter(siteMeshFilter); filterRegistrationBean.setEnabled(true); filterRegistrationBean.addUrlPatterns("/*"); return filterRegistrationBean; } }
spring boot 提供3个ServletRegistrationBean,FilterRegistrationBean,ServletListenerRegistrationBean来细化控制。FilterRegistrationBean 注册sitemesh3 filter 进行配置。