@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); } }
public void setDescription(String description) { filterDef.setDescription(description); context.addFilterDef(filterDef); }
public void setDescription(String description) { filterDef.setDescription(description); context.addFilterDef(filterDef); }
public void setAsyncSupported(boolean asyncSupported) { if (!context.isStarting()) { throw new IllegalStateException(sm.getString("filterRegistration.ise", context.getPath())); } filterDef.setAsyncSupported(asyncSupported); context.addFilterDef(filterDef); }
public Set<String> setInitParameters(Map<String, String> initParameters) { if (!context.isStarting()) { throw new IllegalStateException(sm.getString("filterRegistration.ise", context.getPath())); } if (initParameters == null) { throw new IllegalArgumentException(sm.getString("filterRegistration.iae")); } Set<String> conflicts = new HashSet<String>(); Iterator<String> parameterNames = initParameters.keySet().iterator(); while (parameterNames.hasNext()) { String parameterName = parameterNames.next(); if (filterDef.getInitParameter(parameterName) != null) { conflicts.add(parameterName); } else { String value = initParameters.get(parameterName); if (value == null) { throw new IllegalArgumentException(sm.getString("filterRegistration.iae")); } filterDef.addInitParameter(parameterName, value); } } context.addFilterDef(filterDef); return conflicts; }
private static void addFilter(Context context, Filter filter, String path, Map<String,String> args) { String name = filter.getClass().getSimpleName(); FilterDef dosFilterDef = new FilterDef(); dosFilterDef.setFilter(filter); dosFilterDef.setFilterName(name); for (Map.Entry<String,String> entry : args.entrySet()) { dosFilterDef.addInitParameter(entry.getKey(), entry.getValue()); } context.addFilterDef(dosFilterDef); FilterMap dosFilterMap = new FilterMap(); dosFilterMap.setFilterName(name); dosFilterMap.addURLPattern(path); context.addFilterMap(dosFilterMap); }
public Set<String> setInitParameters(Map<String, String> initParameters) { if (!context.isStarting()) { throw MESSAGES.cannotAddFilterRegistrationAfterInit(context.getPath()); } if (initParameters == null) { throw MESSAGES.invalidFilterRegistrationArguments(); } Set<String> conflicts = new HashSet<String>(); Iterator<String> parameterNames = initParameters.keySet().iterator(); while (parameterNames.hasNext()) { String parameterName = parameterNames.next(); if (filterDef.getInitParameter(parameterName) != null) { conflicts.add(parameterName); } else { String value = initParameters.get(parameterName); if (value == null) { throw MESSAGES.invalidFilterRegistrationArguments(); } filterDef.addInitParameter(parameterName, value); } } context.addFilterDef(filterDef); return conflicts; }
public boolean setInitParameter(String name, String value) { if (!context.isStarting()) { throw new IllegalStateException(sm.getString("filterRegistration.ise", context.getPath())); } if (name == null || value == null) { throw new IllegalArgumentException(sm.getString("filterRegistration.iae")); } if (filterDef.getInitParameter(name) != null) { return false; } filterDef.addInitParameter(name, value); context.addFilterDef(filterDef); return true; }
public void setAsyncSupported(boolean asyncSupported) { if (!context.isStarting()) { throw MESSAGES.cannotAddFilterRegistrationAfterInit(context.getPath()); } filterDef.setAsyncSupported(asyncSupported); context.addFilterDef(filterDef); }
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); }
public boolean setInitParameter(String name, String value) { if (!context.isStarting()) { throw MESSAGES.cannotAddFilterRegistrationAfterInit(context.getPath()); } if (name == null || value == null) { throw MESSAGES.invalidFilterRegistrationArguments(); } if (filterDef.getInitParameter(name) != null) { return false; } filterDef.addInitParameter(name, value); context.addFilterDef(filterDef); return true; }
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); }
filterDef.setFilterClass(CXFJAXRSFilter.class.getName()); filterDef.addInitParameter("mapping", urlPattern.substring(0, urlPattern.length() - "/*".length())); // just keep base path context.addFilterDef(filterDef);
asyncOwbFilter.setFilterClass(EEFilter.class.getName()); asyncOwbFilter.setFilterName(EEFilter.class.getName()); context.addFilterDef(asyncOwbFilter);
filterDef.setFilterClass(CXFJAXRSFilter.class.getName()); filterDef.addInitParameter("mapping", urlPattern.substring(0, urlPattern.length() - "/*".length())); // just keep base path context.addFilterDef(filterDef);
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); }
@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); } }
protected void startTomcat() throws Exception { tomcat = new Tomcat(); File base = new File(System.getProperty("java.io.tmpdir")); org.apache.catalina.Context ctx = tomcat.addContext("/foo",base.getAbsolutePath()); FilterDef fd = new FilterDef(); fd.setFilterClass(TestFilter.class.getName()); fd.setFilterName("TestFilter"); FilterMap fm = new FilterMap(); fm.setFilterName("TestFilter"); fm.addURLPattern("/*"); fm.addServletName("/bar"); ctx.addFilterDef(fd); ctx.addFilterMap(fm); tomcat.addServlet(ctx, "/bar", TestServlet.class.getName()); ctx.addServletMapping("/bar", "/bar"); host = "localhost"; port = getLocalPort(); tomcat.setHostname(host); tomcat.setPort(port); tomcat.start(); }
protected void startTomcat() throws Exception { tomcat = new Tomcat(); File base = new File(System.getProperty("java.io.tmpdir")); org.apache.catalina.Context ctx = tomcat.addContext("/foo", base.getAbsolutePath()); FilterDef fd = new FilterDef(); fd.setFilterClass(TestFilter.class.getName()); fd.setFilterName("TestFilter"); FilterMap fm = new FilterMap(); fm.setFilterName("TestFilter"); fm.addURLPattern("/*"); fm.addServletName("/bar"); ctx.addFilterDef(fd); ctx.addFilterMap(fm); tomcat.addServlet(ctx, "/bar", TestServlet.class.getName()); ctx.addServletMapping("/bar", "/bar"); host = "localhost"; port = getLocalPort(); tomcat.setHostname(host); tomcat.setPort(port); tomcat.start(); }
protected void startTomcat() throws Exception { tomcat = new Tomcat(); File base = new File(System.getProperty("java.io.tmpdir")); org.apache.catalina.Context ctx = tomcat.addContext("/foo",base.getAbsolutePath()); FilterDef fd = new FilterDef(); fd.setFilterClass(TestFilter.class.getName()); fd.setFilterName("TestFilter"); FilterMap fm = new FilterMap(); fm.setFilterName("TestFilter"); fm.addURLPattern("/*"); fm.addServletName("/bar"); ctx.addFilterDef(fd); ctx.addFilterMap(fm); tomcat.addServlet(ctx, "/bar", TestServlet.class.getName()); ctx.addServletMapping("/bar", "/bar"); host = "localhost"; port = getLocalPort(); tomcat.setHostname(host); tomcat.setPort(port); tomcat.start(); }