Spring:如何在XML上下文中设置FilterConfig中的参数

时间:2015-05-19 18:40:09

标签: spring spring-mvc

我的NtlmAuthenticationfilter会覆盖第三方过滤器,该过滤器需要在FilterConfig中设置一些参数,例如

        <init-param>
            <param-name>jcifs.smb.client.responseTimeout</param-name>
            <param-value>60000</param-value>
        </init-param>

我使用的是Spring Security&#39; FilterChainProxy所以我不想在web.xml中初始化我的过滤器

相反,我希望将它们初始化为Spring bean并由Spring容器管理。

如何通过Spring属性设置这些FilterConfig参数。

我看过GenericFilterBean,但不清楚如何做到这一点

1 个答案:

答案 0 :(得分:0)

如果您使用的是Java Config,可以这样做:

@Bean(name="ntlmAuthenticationFilter")
public FilterRegistrationBean ntlmFilter() {
    NtlmAuthenticationFilter filter = new NtlmAuthenticationFilter();
    FilterRegistrationBean registration = new FilterRegistrationBean(filter);
    Map<String, String> params = new HashMap<String, String>();
    params.put("jcifs.smb.client.responseTimeout", "60000");
    registration.setInitParameters(params);
    return registration;
}

(我还没有使用你描述的过滤器,所以我的类名可能错了)