Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Как настроить Spring Сontroller возвращать либо ht


Автор: argamidon 16.2.2015, 20:08
Мне нужно чтобы определённые контроллеры возвращали .html, другие же - .jsp.
Проблема в InternalResourceViewResolver - у него указан суффикс:

Код

    @Bean
    public InternalResourceViewResolver internalResourceViewResolver() {
        InternalResourceViewResolver resolver
                = new InternalResourceViewResolver();
        resolver.setPrefix("/WEB-INF/");
        resolver.setSuffix(".jsp");
        return resolver;
    }

как видно, он всегда приклеит окончание .jsp. Удалил суффикс ,  добавил 

Код

<mvc:resources mapping="/static/**" location="/static/" />


 в свой xml конфиг как сказано http://stackoverflow.com/questions/15479213/how-to-serve-html-files-with-spring, но страница html не вызывается вообще. Как я ни пытался делать запрос - static/page.html, и т.д.

и ещё один вопрос

В некоторых гайдах в файле-конфиге DispatcherServlet (web.xml) имеется такой маппинг:

Код

    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>


Но а в некоторых элемент 
Код

<url-pattern>/</url-pattern>
 имеет значение *.htm вместо слэша.
Что означают эти значения и какая разница между ними?

Автор: mbasil 4.3.2015, 00:40
*.htm - Означает: "все, что имеет суффикс .htm"

"Звездочка" может стоять вначале (как в этом примере), или - вконце, тогда это означает любой префикс. Символ "/" в url-pattern обязателен, так как означает ту часть адреса, которая стоит после контекста приложения.

Автор: AntonSaburov 5.3.2015, 17:47
Не обязательно пользоваться InternalResourceViewResolver - можно взять XmlViewResolver. Также можно сделать стек резолверов - там вообще развлекаться по полной.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)