Google Chrome, представляющий XML как текст для канала RSS

Существует три способа добавить ваш фильтр:

  1. Аннотировать ваш фильтр одним из стереотипов Spring, например @Component
  2. Зарегистрировать @Bean с помощью Filter в пружине @Configuration
  3. Зарегистрировать @Bean с FilterRegistrationBean в Spring @Configuration

Либо # 1, либо 2 будут делать, если вы хотите, чтобы ваш фильтр применялся ко всем запросам без настройки, в противном случае используйте # 3. Вам не нужно указывать проверку компонента для # 1 для работы до тех пор, пока вы помещаете свой класс фильтра в тот же или подпакет вашего класса SpringApplication. Для # 3 использование вместе с # 2 необходимо только тогда, когда вы хотите, чтобы Spring управлял вашим классом фильтра, например, он имел автозависимые связи. Он отлично подходит для меня, чтобы создать новый фильтр, который не нуждается в автоподготовке / инъекции зависимости.

Хотя сочетание # 2 и # 3 отлично работает, я был удивлен, что в итоге два фильтра не применяются дважды. Я предполагаю, что Spring объединяет два компонента как один, когда он вызывает тот же метод для создания обоих. Если вы хотите использовать № 3 только с автооговором, вы можете AutowireCapableBeanFactory. Ниже приведен пример

private @Autowired AutowireCapableBeanFactory beanFactory;

    @Bean
    public FilterRegistrationBean myFilter() {
        FilterRegistrationBean registration = new FilterRegistrationBean();
        Filter myFilter = new MyFilter();
        beanFactory.autowireBean(myFilter);
        registration.setFilter(myFilter);
        registration.addUrlPatterns("/myfilterpath/*");
        return registration;
    }
24
задан Scott 1 November 2009 в 07:03
поделиться

4 ответа

Это известная ошибка в chrome, которая еще не исправлена, chrome не отображает XML-каналы RSS с каким-либо форматированием.

Обновление: теперь есть расширение для подписки / чтения RSS для Chrome.

26
ответ дан Wedge 28 November 2019 в 23:52
поделиться

Суть в том, что поддержка RSS не используется «большинством» пользователей, и пока что они реализуют ее только как расширение. Расширение доступно здесь: RSS SubscriptionExtension

Подробное обсуждение этого вопроса в заключительном комментарии к ошибке - вы можете прочитать заметки разработчика здесь: Комментарий 149

2
ответ дан dmp 28 November 2019 в 23:52
поделиться

Попробуйте изменить заголовок на text/xml и посмотрите, поможет ли он:

header("Content-Type: text/xml; charset=ISO-8859-1");
1
ответ дан Traveling Tech Guy 28 November 2019 в 23:52
поделиться

попробуйте расширение chrome "XML Tree"

1
ответ дан EddieO 28 November 2019 в 23:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: