Как вызвать фильтр сервлета(имеющий зависимость от другого объекта) в web.xml. Нужен xml-эквивалент заданной конфигурации фильтра springboot

#java #xml #spring #servlets #servlet-filters

Вопрос:

Мне нужно использовать сторонний фильтр в моем приложении. Я использую внешние банки(см. Инструкции по импорту в коде) для этого фильтра. Добавлены зависимости для банки с фильтром в pom.xml. Теперь я хочу вызвать этот фильтр, однако не уверен, как я могу это сделать с помощью конфигурации xml. У меня есть правильный эквивалентный код springboot для применения этого фильтра.

(В моем проекте используются сервлеты spring (но без весенней загрузки), но я все равно попытался добавить приведенный ниже код, добавив зависимость от весенней загрузки, но фильтр не работает) Может ли кто-нибудь помочь мне с xml-эквивалентом приведенного ниже кода?

 package com.dd.demo;


import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

import javax.servlet.Filter;
import javax.servlet.ServletException;

import com.ext.auth.Access; //this is external jar class
import com.ext.auth.filter.AuthFilter; //this is external jar class 


@Configuration
@ComponentScan(basePackages = "com.dd.demo")
public class AuthConfig {

   @Bean
    public Access access() {
        Access access = new Access(new String[]{"path=C:/Users/config.properties"});
        return access;
    }
    @Bean(name = "authFilter")
    public Filter authFilter() throws ServletException {
        return new AuthFilter(true,access());
    }
   @Bean
    public FilterRegistrationBean authFilterRegistration() throws ServletException {
        FilterRegistrationBean registration = new FilterRegistrationBean();
        registration.setFilter(authFilter());
        registration.addUrlPatterns("/*");
        registration.setOrder(0);
        return registration;
    }


} ```
 

Комментарии:

1. Регистрация фильтра java-кода Spring также может регистрировать фильтр из «внешних» банок.