@Override public List<String> getFilterUrlMappings(FilterConfig filterConfig) { FilterRegistration filterRegistration = filterConfig.getServletContext().getFilterRegistration(filterConfig.getFilterName()); Collection<String> urlPatternMappings = filterRegistration.getUrlPatternMappings(); List<String> result = new ArrayList<>(); for (String pattern : urlPatternMappings) { result.add(pattern.endsWith("*") ? pattern.substring(0, pattern.length() - 1) : pattern); } return result; } }
/** * Configures servlet context. */ private void configureServletContext(final ServletContext servletContext) { servletContext.addListener(jodd.servlet.RequestContextListener.class); if (decoraEnabled) { final FilterRegistration filter = servletContext.addFilter("decora", jodd.decora.DecoraServletFilter.class); filter.addMappingForUrlPatterns(null, true, contextPath); } final FilterRegistration filter = servletContext.addFilter("madvoc", jodd.madvoc.MadvocServletFilter.class); filter.addMappingForUrlPatterns(madvocDispatcherTypes, true, contextPath); }
/** * Returns the servlet name mappings for the registered filter. * @return the mappings */ public Collection<String> getServletNameMappings() { return this.getRegistration().getServletNameMappings(); }
context.addFilter(filterDescriptor.getFilterName(), filterDescriptor.getFilterClass()); filterRegistration.setInitParameters(filterDescriptor.getInitParams()); filterRegistration.addMappingForUrlPatterns( grizzlyDispatcherTypes(filterDescriptor.getDispatcherTypes()), true,
private Map<String, Object> buildFilterList() { Map<String, Object> filterMap = new HashMap<>(); for (Map.Entry<String, ? extends FilterRegistration> filterRegistrationEntry : servletContext .getFilterRegistrations().entrySet()) { FilterRegistration filterRegistration = filterRegistrationEntry.getValue(); Map<String, Object> filterRegistrationInfo = new HashMap<>(); filterRegistrationInfo.put("class", filterRegistration.getClassName()); filterRegistrationInfo.put("parameters", filterRegistration.getInitParameters()); Collection<String> mappings = filterRegistration.getServletNameMappings(); if (mappings == null) { mappings = new ArrayList<>(); } filterRegistrationInfo.put("servletNameMappings", Sets.newLinkedHashSet(mappings)); Collection<String> patterns = filterRegistration.getUrlPatternMappings(); if (patterns == null) { patterns = new ArrayList<>(); } filterRegistrationInfo.put("urlPatternMappings", Sets.newLinkedHashSet(patterns)); filterMap.put(filterRegistrationEntry.getKey(), filterRegistrationInfo); } return filterMap; }
log.info("Collecting servlet mapping do detect which ones are filtered by {}", filterRegistration.getClassName()); final PathMap<ServletRegistration> pathMap = new PathMap<ServletRegistration>(); for (final String mapping : filterRegistration.getUrlPatternMappings()) { servletRegistrations.add(pathMap.match(mapping)); for (final String servletName : filterRegistration.getServletNameMappings()) { servletRegistrations.add(servletContext.getServletRegistration(servletName)); log.warn("ServletRegistration {} should be an instance of Dynamic.", registration.getClassName()); log.warn("If {} has the async-supported flag turned on, make sure the targeted servlet is in the same state.", filterRegistration.getClassName());
securityHeaderFilter.addMappingForUrlPatterns(null, false, "/*"); securityHeaderFilter.setInitParameter(SecurityHeaderFilter.PARAM_CSP_HEADER_VALUE, cspHeaderValue); userFilter.addMappingForUrlPatterns(null, filterAfterInternal, "/secure/*"); userFilter.addMappingForUrlPatterns(null, filterAfterInternal, "/wa/*"); hibernateFilter.setInitParameter("sessionFactoryBeanName", "sessionFactory"); hibernateFilter.setInitParameter("singleSession", "false"); hibernateFilter.addMappingForUrlPatterns(null, filterAfterInternal, "/wa/*"); springContext.addMappingForUrlPatterns(null, filterAfterInternal, "/secure/*"); springContext.addMappingForUrlPatterns(null, filterAfterInternal, "/wa/*"); wicketApp.setInitParameter(WicketFilter.APP_FACT_PARAM, SpringWebApplicationFactory.class.getName()); wicketApp.setInitParameter(PARAM_APP_BEAN, "wicketApplication"); wicketApp.setInitParameter(WicketFilter.FILTER_MAPPING_PARAM, "/wa/*"); wicketApp.addMappingForUrlPatterns(null, filterAfterInternal, "/wa/*"); restUserFilter.addMappingForUrlPatterns(null, false, "/rest/*"); expire.setInitParameter("Cache-Control", "public, max-age=7200"); expire.addMappingForUrlPatterns(null, false, "*.css"); expire.addMappingForUrlPatterns(null, false, "*.gif"); expire.addMappingForUrlPatterns(null, false, "*.gspt"); expire.addMappingForUrlPatterns(null, false, "*.jpg"); expire.addMappingForUrlPatterns(null, false, "*.js"); expire.addMappingForUrlPatterns(null, false, "*.png"); expire.addMappingForUrlPatterns(null, false, "*.swf");
public String getClassName() { return delegate.getClassName(); }
String[] urlPatterns = element.elements("url-pattern").stream().map(Element::getTextTrim).toArray(String[]::new); if (servletNames.length > 0) { fReg.addMappingForServletNames(dispatcherTypes, true, servletNames); fReg.addMappingForUrlPatterns(dispatcherTypes, true, urlPatterns);
private static void mapFilterToServlet( FilterRegistration filterRegistration, ServletRegistration servletRegistration ) { EnumSet<DispatcherType> dispatcherType = EnumSet.of( DispatcherType.REQUEST ); String servletName = servletRegistration.getName(); filterRegistration.addMappingForServletNames( dispatcherType, false, servletName ); }
for (final Map.Entry<String, String> entry : registrationBean.getInitParameters() .entrySet()) { filterRegistration.setInitParameter(entry.getKey(), entry.getValue());
public String getName() { return delegate.getName(); }
private Map<String, Object> buildFilterList() { Map<String, Object> filterMap = new HashMap<String, Object>(); for (Map.Entry<String, ? extends FilterRegistration> filterRegistrationEntry : servletContext.getFilterRegistrations().entrySet()) { FilterRegistration filterRegistration = filterRegistrationEntry.getValue(); Map<String, Object> filterRegistrationInfo = new HashMap<String, Object>(); filterRegistrationInfo.put("class", filterRegistration.getClassName()); filterRegistrationInfo.put("parameters", filterRegistration.getInitParameters()); Collection<String> mappings = filterRegistration.getServletNameMappings(); if (mappings == null) { mappings = new ArrayList<String>(); } filterRegistrationInfo.put("servlet-name-mappings", Lists.newArrayList(mappings)); Collection<String> patterns = filterRegistration.getUrlPatternMappings(); if (patterns == null) { patterns = new ArrayList<String>(); } filterRegistrationInfo.put("url-pattern-mappings", Lists.newArrayList(patterns)); filterMap.put(filterRegistrationEntry.getKey(), filterRegistrationInfo); } return filterMap; } }
public class WebAppInitializer implements WebApplicationInitializer { @Override public void onStartup(ServletContext container) throws ServletException { AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); container.addListener(new ContextLoaderListener(context)); context.register(ApplicationConfiguration.class); FilterRegistration filter = container.addFilter("wicket.myproject", WicketFilter.class); filter.setInitParameter("applicationClassName", WicketApplication.class.getName()); filter.setInitParameter(WicketFilter.FILTER_MAPPING_PARAM, "/*"); filter.addMappingForUrlPatterns(null, false, "/*"); } }
private FilterRegistration registerFilter(final String filterName, final Class<? extends Filter> filterClass, final Map<String, String> initParameters, final String... urlPatterns) { FilterRegistration filterRegistration = servletContext.getFilterRegistration(filterName); if (filterRegistration == null) { filterRegistration = servletContext.addFilter(filterName, filterClass); filterRegistration.addMappingForUrlPatterns(DISPATCHER_TYPES, true, urlPatterns); if (initParameters != null) { filterRegistration.setInitParameters(initParameters); } log.debug("Filter {} for URL {} registered.", filterName, urlPatterns); } return filterRegistration; }
private boolean singleWarDeployment(ServletContext sc) { List<? extends FilterRegistration> monitoringFilters = sc.getFilterRegistrations().values() .stream() .filter(fr -> MonitoringFilter.class.getName().equals(fr.getClassName())) .collect(Collectors.toList()); return monitoringFilters.size() > 1; } }
ServletContext sc = event.getServletContext(); // dynamically register servlet ServletRegistration.Dynamic reg = sc.addServlet("MyServlet", MyServlet.class); reg.addMapping("/MyUrl/*"); // register new servlet with an existing filter FilterRegistration fr = sc.getFilterRegistration("MyExistingFilterInWebXML"); EnumSet<DispatcherType> all = EnumSet.allOf(DispatcherType.class); fr.addMappingForServletNames(all, false, "MyServlet");
filterRegistration.setInitParameter(entry.getKey(), entry.getValue());
aRow.addCell (aRegistration.getName ()); aRow.addCell (aRegistration.getClassName ()); for (final Map.Entry <String, String> aEntry : aRegistration.getInitParameters ().entrySet ()) aInitParams.add (aEntry.getKey () + "=" + aEntry.getValue ()); aRow.addCell (HCUtils.list2divList (aInitParams)); aRow.addCell (HCUtils.list2divList (aRegistration.getServletNameMappings ())); aRow.addCell (HCUtils.list2divList (aRegistration.getUrlPatternMappings ()));
@Override public List<String> getFilterUrlMappings(FilterConfig filterConfig) { FilterRegistration filterRegistration = filterConfig.getServletContext().getFilterRegistration(filterConfig.getFilterName()); Collection<String> urlPatternMappings = filterRegistration.getUrlPatternMappings(); List<String> result = new ArrayList<>(); for (String pattern : urlPatternMappings) { result.add(pattern.endsWith("*") ? pattern.substring(0, pattern.length() - 1) : pattern); } return result; } }