本文整理汇总了Java中org.apache.tomcat.util.descriptor.web.FilterDef.setFilterName方法的典型用法代码示例。如果您正苦于以下问题:Java FilterDef.setFilterName方法的具体用法?Java FilterDef.setFilterName怎么用?Java FilterDef.setFilterName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.tomcat.util.descriptor.web.FilterDef
的用法示例。
在下文中一共展示了FilterDef.setFilterName方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: deployConfig
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
@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.addServletMapping("/", "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);
}
}
示例2: dispatchFilter
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
private FilterDef dispatchFilter(String name, String type)
{
FilterDef filterDef = new FilterDef();
filterDef.setFilterName(name);
filterDef.setFilterClass(RequestDispatchFilter.class.getName());
filterDef.addInitParameter("dispatcher", type);
return filterDef;
}
示例3: filterDef
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
/**
* 定义一个过滤器
* @param className 过滤器的全路径
* @return
*/
protected FilterDef filterDef(String className) {
FilterDef def = new FilterDef();
def.setAsyncSupported("true");
def.setFilterClass(className);
def.setFilterName(className);
return def;
}
示例4: setUpTomcat
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
public static void setUpTomcat(String dataSourceFactory) throws LifecycleException, ServletException {
// create a tomcat instance
tomcat = new Tomcat();
tomcat.setBaseDir(".");
tomcat.setPort(0);
tomcat.enableNaming();
// create a context with our test servlet
Context ctx = tomcat.addContext(CONTEXT_PATH, new File(".").getAbsolutePath());
Tomcat.addServlet(ctx, SERVLET_NAME, new TestServlet());
ctx.addServletMappingDecoded("/*", SERVLET_NAME);
// add our metrics filter
FilterDef def = new FilterDef();
def.setFilterClass(TomcatServletMetricsFilter.class.getName());
def.setFilterName("metricsFilter");
def.addInitParameter("buckets",".01, .05, .1, .25, .5, 1, 2.5, 5, 10, 30");
ctx.addFilterDef(def);
FilterMap map = new FilterMap();
map.setFilterName("metricsFilter");
map.addURLPattern("/*");
ctx.addFilterMap(map);
// create a datasource
ContextResource resource = new ContextResource();
resource.setName("jdbc/db");
resource.setAuth("Container");
resource.setType("javax.sql.DataSource");
resource.setScope("Sharable");
resource.setProperty("name", "foo");
resource.setProperty("factory", dataSourceFactory);
resource.setProperty("driverClassName", "org.h2.Driver");
resource.setProperty("url", "jdbc:h2:mem:dummy");
resource.setProperty("jdbcInterceptors", "nl.nlighten.prometheus.tomcat.TomcatJdbcInterceptor(logFailed=true,logSlow=true,threshold=0,buckets=.01|.05|.1|1|10,slowQueryBuckets=1|10|30)");
ctx.getNamingResources().addResource(resource);
// start instance
tomcat.init();
tomcat.start();
}
示例5: setupContext
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
protected void setupContext() throws ServletException {
Context context = tomcat.addWebapp("/", ".");
Tomcat.addServlet(context, "dummy", new DummyServlet());
context.addServletMappingDecoded("/dummy", "dummy");
FilterDef filterDef = new FilterDef();
filterDef.setDisplayName("ipBlocker");
filterDef.setFilter(new IpBlockerFilter());
filterDef.setFilterName("ipBlocker");
context.addFilterDef(filterDef);
FilterMap filterMap = new FilterMap();
filterMap.addURLPattern("/*");
filterMap.setFilterName("ipBlocker");
context.addFilterMap(filterMap);
}
示例6: createGuiceFilter
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
private void createGuiceFilter(Context context) {
FilterDef filterDefinition = new FilterDef();
filterDefinition.setFilterName(GuiceFilter.class.getSimpleName());
filterDefinition.setFilterClass(GuiceFilter.class.getName());
context.addFilterDef(filterDefinition);
FilterMap filterMapping = new FilterMap();
filterMapping.setFilterName(GuiceFilter.class.getSimpleName());
filterMapping.addURLPattern("/*");
context.addFilterMap(filterMapping);
}
示例7: addFilterMapping
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
@Override
public void addFilterMapping(final FilterMap filterMap) {
// we need to add this one before the mapping cause of tomcat validation (ie dont make deployment fail)
if ("CDI Conversation Filter".equals(filterMap.getFilterName()) && !cdiConversation) {
final FilterDef conversationFilter = new FilterDef();
conversationFilter.setAsyncSupported("true");
conversationFilter.setDescription("CDI Conversation Filter");
conversationFilter.setDisplayName("CDI Conversation Filter");
conversationFilter.setFilterName("CDI Conversation Filter");
conversationFilter.setFilterClass(WebConversationFilter.class.getName());
addFilter(conversationFilter);
cdiConversation = true;
}
super.addFilterMapping(filterMap);
}
示例8: addFilterToContext
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
/**
* Adds a predefined Filter definition and mapping to a Context
* Method
* @param rootCtx the Context to add the predefined Filter to
*/
public static void addFilterToContext(Context rootCtx) {
// See https://tomcat.apache.org/tomcat-8.5-doc/config/filter.html for filters
/*
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,HEAD,OPTIONS,PUT</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*/
String filterName = "CorsFilter";
String filterClass = "org.apache.catalina.filters.CorsFilter";
FilterDef filterDef = new FilterDef();
filterDef.setFilterName(filterName);
filterDef.setFilterClass(filterClass);
filterDef.addInitParameter("cors.allowed.origins", "*");
filterDef.addInitParameter("cors.allowed.methods", "GET,POST,HEAD,OPTIONS,PUT");
filterDef.addInitParameter("cors.allowed.headers", "Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers");
// Don't forget mapping
FilterMap filterMap = new FilterMap();
filterMap.setFilterName(filterName);
filterMap.addURLPattern("/*");
// Add both filter definition & mapping to context that will be used by a servlet:
rootCtx.addFilterDef(filterDef);
rootCtx.addFilterMap(filterMap);
}
示例9: beforeStart
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void beforeStart(final StandardContext standardContext) {
if (standardContext.getResources() != null && LazyStopStandardRoot.class.isInstance(standardContext.getResources())) {
// reset after reload
Reflections.set(standardContext, "resources", LazyStopStandardRoot.class.cast(standardContext.getResources()).getDelegate());
}
final ServletContext sc = standardContext.getServletContext();
if (sc != null && !SystemInstance.get().getOptions().get(OPENEJB_JSESSION_ID_SUPPORT, true)) {
final Set<SessionTrackingMode> defaultTrackingModes = sc.getEffectiveSessionTrackingModes();
if (defaultTrackingModes.contains(SessionTrackingMode.URL)) {
final Set<SessionTrackingMode> newModes = new HashSet<>();
newModes.remove(SessionTrackingMode.URL);
sc.setSessionTrackingModes(newModes);
}
}
initContextLoader(standardContext);
// used to add custom filters first - our arquillian integration uses it for instance
// needs to be done now (= before start event) because of addFilterMapBefore() usage
final String filters = SystemInstance.get().getProperty("org.apache.openejb.servlet.filters");
if (filters != null) {
final String[] names = filters.split(",");
for (final String name : names) {
final String[] clazzMapping = name.split("=");
final FilterDef filterDef = new FilterDef();
filterDef.setFilterClass(clazzMapping[0]);
filterDef.setFilterName(clazzMapping[0]);
standardContext.addFilterDef(filterDef);
final FilterMap filterMap = new FilterMap();
filterMap.setFilterName(clazzMapping[0]);
filterMap.addURLPattern(clazzMapping[1]);
standardContext.addFilterMapBefore(filterMap);
}
}
// mainly to get back compatibility with tomcat <= 8.0
final String cookieProcessor = SystemInstance.get().getProperty("tomee.tomcat.cookieProcessor");
if (cookieProcessor != null) {
// not that important for now if we use the container loader, we mainly want to be able to access
// the legacy one
final ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
try {
final Class<?> cookieProcessorClass = contextClassLoader.loadClass(cookieProcessor.trim());
standardContext.setCookieProcessor(CookieProcessor.class.cast(cookieProcessorClass.newInstance()));
} catch (final Exception e) {
throw new IllegalArgumentException("Cannot set CookieProcessor: " + cookieProcessor);
}
}
}
示例10: createRsHttpListener
import org.apache.tomcat.util.descriptor.web.FilterDef; //导入方法依赖的package包/类
@Override
public AddressInfo createRsHttpListener(final String appId, final String webContext, final HttpListener listener, final ClassLoader classLoader, final String completePath, final String virtualHost, final String auth, final String realm) {
String path = webContext;
if (path == null) {
throw new NullPointerException("contextRoot is null");
}
if (listener == null) {
throw new NullPointerException("listener is null");
}
// find the existing host (we do not auto-create hosts)
Container host;
Context context = null;
if (virtualHost == null) {
host = hosts.getDefault();
} else {
host = hosts.get(virtualHost);
}
if (host == null) {
for (final Host h : hosts) {
context = findContext(h, appId, webContext);
if (context != null) {
host = h;
if (classLoader != null && classLoader.equals(context.getLoader().getClassLoader())) {
break;
} // else try next to find something better
}
}
if (host == null) {
throw new IllegalArgumentException("Invalid virtual host '" + virtualHost + "'. Do you have a matching Host entry in the server.xml?");
}
} else {
context = findContext(host, appId, webContext);
}
if (context == null) {
throw new IllegalStateException("Invalid context '" + webContext + "'. Cannot find context in host " + host.getName());
}
final CxfRsHttpListener cxfRsHttpListener = findCxfRsHttpListener(listener);
final String description = "tomee-jaxrs-" + listener;
String mapping = completePath;
if (!completePath.endsWith("/*")) { // respect servlet spec (!= from our embedded listeners)
if (completePath.endsWith("*")) {
mapping = completePath.substring(0, completePath.length() - 1);
}
mapping = mapping + "/*";
}
final String urlPattern = removeWebContext(webContext, mapping);
cxfRsHttpListener.setUrlPattern(urlPattern.substring(0, urlPattern.length() - 1));
final FilterDef filterDef = new FilterDef();
filterDef.setAsyncSupported("true");
filterDef.setDescription(description);
filterDef.setFilterName(description);
filterDef.setDisplayName(description);
filterDef.setFilter(new CXFJAXRSFilter(cxfRsHttpListener, context.findWelcomeFiles()));
filterDef.setFilterClass(CXFJAXRSFilter.class.getName());
filterDef.addInitParameter("mapping", urlPattern.substring(0, urlPattern.length() - "/*".length())); // just keep base path
context.addFilterDef(filterDef);
final FilterMap filterMap = new FilterMap();
filterMap.addURLPattern(urlPattern);
for (final DispatcherType type : DispatcherType.values()) {
filterMap.setDispatcher(type.name());
}
filterMap.setFilterName(filterDef.getFilterName());
context.addFilterMap(filterMap);
Registrations.addFilterConfig(context, filterDef);
path = address(connectors, host.getName(), webContext);
final String key = address(connectors, host.getName(), completePath);
listeners.put(new Key(appId, key), listener);
return new AddressInfo(path, key);
}