@Override public void deployConfig(WebApplicationContext wac, Filter... filters) { Assert.state(this.port != -1, "setup() was never called."); this.context = this.tomcatServer.addContext("", System.getProperty("java.io.tmpdir")); this.context.addApplicationListener(WsContextListener.class.getName()); Tomcat.addServlet(this.context, "dispatcherServlet", new DispatcherServlet(wac)).setAsyncSupported(true); this.context.addServletMappingDecoded("/", "dispatcherServlet"); for (Filter filter : filters) { FilterDef filterDef = new FilterDef(); filterDef.setFilterName(filter.getClass().getName()); filterDef.setFilter(filter); filterDef.setAsyncSupported("true"); this.context.addFilterDef(filterDef); FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filter.getClass().getName()); filterMap.addURLPattern("/*"); filterMap.setDispatcher("REQUEST,FORWARD,INCLUDE,ASYNC"); this.context.addFilterMap(filterMap); } }
private void configureAdditionalHeaders(Context context) { FilterDef additionalHeadersFilter = new FilterDef(); additionalHeadersFilter.setFilterName(AdditionalHeadersFilter.class.getSimpleName()); additionalHeadersFilter.setFilterClass(AdditionalHeadersFilter.class.getName()); additionalHeadersFilter.setAsyncSupported("true"); additionalHeadersFilter.addInitParameter("additionalHeaders", additionalHeaders); context.addFilterDef(additionalHeadersFilter); FilterMap additionalHeadersFilterMap = new FilterMap(); additionalHeadersFilterMap.setFilterName(AdditionalHeadersFilter.class.getSimpleName()); additionalHeadersFilterMap.addURLPattern("/*"); context.addFilterMap(additionalHeadersFilterMap); }
private void configureResponseSecurityHeaders(Context context) { FilterDef httpHeaderFilter = new FilterDef(); httpHeaderFilter.setFilterName(HttpHeaderSecurityFilter.class.getSimpleName()); httpHeaderFilter.setFilterClass(HttpHeaderSecurityFilter.class.getName()); httpHeaderFilter.setAsyncSupported("true"); // X-Frame-Options httpHeaderFilter.addInitParameter("antiClickJackingEnabled", "true"); httpHeaderFilter.addInitParameter("antiClickJackingOption", antiClickJackingOption); if (!StringUtils.isEmpty(antiClickJackingUri)) httpHeaderFilter.addInitParameter("antiClickJackingUri", antiClickJackingUri); // X-XSS-Protection httpHeaderFilter.addInitParameter("xssProtectionEnabled", "true"); // X-Content-Type-Options httpHeaderFilter.addInitParameter("blockContentTypeSniffingEnabled", "true"); // HTTP Strict-Transport-Security httpHeaderFilter.addInitParameter("hstsEnabled", "true"); httpHeaderFilter.addInitParameter("hstsIncludeSubDomains", Boolean.toString(hstsIncludeSubdomains)); httpHeaderFilter.addInitParameter("hstsMaxAgeSeconds", Integer.toString(hstsMaxAgeSeconds)); context.addFilterDef(httpHeaderFilter); FilterMap httpHeaderFilterMap = new FilterMap(); httpHeaderFilterMap.setFilterName(HttpHeaderSecurityFilter.class.getSimpleName()); httpHeaderFilterMap.addURLPattern("/*"); context.addFilterMap(httpHeaderFilterMap); }
standardContext.addFilterDef(filterDef); final FilterMap filterMap = new FilterMap(); filterMap.setFilterName(clazzMapping[0]); filterMap.addURLPattern(clazzMapping[1]);
context.addFilterDef(asyncOwbFilter); final FilterMap asyncOwbMapping = new FilterMap(); asyncOwbMapping.setFilterName(asyncOwbFilter.getFilterName()); asyncOwbMapping.addURLPattern("/*");
@Override public void addMappingForServletNames( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... servletNames) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (servletNames != null) { for (String servletName : servletNames) { filterMap.addServletName(servletName); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
@Override public void addMappingForUrlPatterns( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... urlPatterns) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (urlPatterns != null) { // % decoded (if necessary) using UTF-8 for (String urlPattern : urlPatterns) { filterMap.addURLPattern(urlPattern); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
@Override public void addMappingForServletNames( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... servletNames) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (servletNames != null) { for (String servletName : servletNames) { filterMap.addServletName(servletName); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
@Override public void addMappingForServletNames( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... servletNames) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (servletNames != null) { for (String servletName : servletNames) { filterMap.addServletName(servletName); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
@Override public void addMappingForUrlPatterns( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... urlPatterns) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (urlPatterns != null) { for (String urlPattern : urlPatterns) { filterMap.addURLPattern(urlPattern); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
context.addFilterDef(filterDef); final FilterMap filterMap = new FilterMap(); filterMap.addURLPattern(urlPattern); for (final DispatcherType type : DispatcherType.values()) {
@Override public void addMappingForUrlPatterns( EnumSet<DispatcherType> dispatcherTypes, boolean isMatchAfter, String... urlPatterns) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); if (dispatcherTypes != null) { for (DispatcherType dispatcherType : dispatcherTypes) { filterMap.setDispatcher(dispatcherType.name()); } } if (urlPatterns != null) { // % decoded (if necessary) using UTF-8 for (String urlPattern : urlPatterns) { filterMap.addURLPattern(urlPattern); } if (isMatchAfter) { context.addFilterMap(filterMap); } else { context.addFilterMapBefore(filterMap); } } // else error? }
ctx.addFilterDef(filterDef); FilterMap mapping = new FilterMap(); mapping.setFilterName(filterName); stream(filterDescriptor.urlPatterns()).forEach(mapping::addURLPattern);
ctx.addFilterDef(filterDef); FilterMap mapping = new FilterMap(); mapping.setFilterName(filterName); stream(filterDescriptor.urlPatterns()).forEach(mapping::addURLPattern);
FilterMap filterMap = new FilterMap(); filterMap.setFilterName(webFilter.filterName()); String[] urlPatterns = webFilter.urlPatterns();
private void addJcsFilter(final Context ctx) { final FilterDef filterDef = new FilterDef(); filterDef.setFilterName("jcs"); filterDef.setFilterClass(JCacheFilter.class.getName()); ctx.addFilterDef(filterDef); final FilterMap filterMap = new FilterMap(); filterMap.setFilterName(filterDef.getFilterName()); filterMap.addURLPattern("/*"); ctx.addFilterMap(filterMap); }
FilterMap filterMap = new FilterMap();
FilterMap filterMap = new FilterMap();
context.addFilterDef(requestDumperFilterDef); FilterMap requestDumperFilterMap = new FilterMap(); requestDumperFilterMap.setFilterName("RequestDumper"); requestDumperFilterMap.addURLPattern("*");
@Override public void addFilter(FilterDescriptor descriptor) { String name = descriptor.getName(); Context context = getContextForPath(descriptor.getContext()); FilterDef filterDef = new FilterDef(); filterDef.setFilterName(name); filterDef.setDisplayName(descriptor.getDisplayName()); filterDef.setFilterClass(descriptor.getClazz().getName()); Map<String, String> initParams = descriptor.getInitParams(); if (initParams != null) { filterDef.getParameterMap().putAll(initParams); } context.addFilterDef(filterDef); for (FilterMappingDescriptor fmd : descriptor.getFilterMappings()) { FilterMap filterMap = new FilterMap(); filterMap.setFilterName(name); filterMap.addURLPatternDecoded(fmd.getUrlPattern()); for (String dispatch : fmd.getDispatchers()) { filterMap.setDispatcher(dispatch); } context.addFilterMap(filterMap); } }