2015-11-20 3 views
0

Я использую BIRT API для рендеринга отчетов в jsp. Jsp делает вызовы через javascript и ajax для загрузки содержимого отчета. Мои пользовательские BirtView и BirtEngineFactory зарегистрированы как бобы.BirtView BeanNameViewResolver с типом контента «text/html»

My BeanNameViewResolver никогда не проверяется, потому что InternalResourceViewResolver в ContentNegotiationViewResolver возвращает 404, когда ему не удается найти соответствующий файл .jsp или .html.

Возможно ли, что BeanNameViewResolver служит для «text/html» без установки его порядка выше ContentNegotationViewResolver? то есть, если нет соответствующего .jsp или .html файл не найден, то BeanNameViewResolver будет судим возвращая 404.

ответ

0

Когда chaining view resolvers (см цепочки ViewResolvers), InternalResourceViewResolver всегда должен быть последним, потому что он всегда автоматически позиционируется как последний резольвер в цепочке. Итак, убедитесь, что ваш BeanNameViewResolver определен до InternalResourceViewResolver.

+0

Это не должно быть последним, потому что вы можете установить его упорядоченное свойство. Например, наш 'JsonViewResolver' является последним. Мы в конечном итоге решили поставить его после 'BeanNameViewResolver', потому что мы не смогли найти краткое решение, поставив перед ним' InternalResourceViewResolver'. – Roger