Я использую Tuckey UrlRewriteFilter. Я хочу использовать правило перезаписи из базы данных, поэтому с помощью конфигурации <class-rule class="com.example.Foo" />
, которая позволяет вам получать правила во время выполнения. Я создал класс, расширяющий RewriteRule:Как вставить репозиторий JPA данных Spring Data в сервлет-фильтр?
public class Foo extends RewriteRule {
@Autowired
private MyRepository myRepository;
public boolean init(ServletContext servletContext) {
return true;
}
@Override
public RewriteMatch matches(HttpServletRequest request, HttpServletResponse response) {
//myRepository is null
return super.matches(request, response);
}
@Override
public void destroy() {
}
}
я хотел бы использовать Spring Data JPA Repository внутри этого Foo класса, но он выглядит хранилище является недействительным.
Как я могу правильно ввести его?
Спасибо @manish. Я получаю исключение NullPointerException в статическом методе UrlRewriteFilter.getFullVersionString() в UrlRewriteFilter.class.getResourceAsStream ("build.number.properties"); –
Это не связано с вашим оригинальным вопросом. Вы найдете много ответов на StackOverflow для 'NullPointerException с помощью getResourceAsStream'. Если ни один из них не работает, откройте отдельный вопрос. – manish
он отлично работал без DelegatingFilterProxy, поэтому он должен быть связан с этим. –