2015-06-11 4 views
0

Мне интересно, как добавить фильтр в весеннюю загрузку, если класс java доступен только в контейнере приложения, то есть он недоступен во время компиляции.Spring boot - добавление фильтра

FilterRegistrationBean может добавлять только класс Filter, а не String имени класса, который будет создан при запуске во время выполнения.

Возможно ли это? Я думаю, что мне, возможно, придется добавить web.xml в мой проект, но я бы предпочел не в минуту.

Любая помощь приветствуется.

Спасибо.

ответ

0

Если ваш фильтр имеет конструктор no-args, это должно работать.

try { 
    Class c = Class.forName("com.runtimeFilter"); 
    Filter filter = (Filter)c.newInstance(); 
    //register filter with bean 
} catch (Exception e) {} 

Если есть конструктор с аргументами, которые необходимо использовать метод getConstructor() по классу.

+0

Это сработало спасибо. Должен был подумать об этом ...... – user2663635

Смежные вопросы