2015-01-08 7 views
2

В моем проекте я использую библиотеку swagger-ui, у которой есть файл index.html в корне пути класса. Таким образом, index.html становится стартовой страницей моего приложения, когда я нажимаю корневой URL-адрес, например /.
Но я хочу использовать свой собственный шаблон Groovy index.tpl из resources/templates папку моего проекта загрузки. Когда я выполняю такой подход, приложение все еще отображает index.html из файла JAR Swagger-UI.Spring Boot - Переопределить индексную страницу от webjar


Как переопределить индексную страницу из jar с пользовательским из проекта?

UPD: Подход ниже не работает для меня. Он возвращает ошибку 404. Затем я добавляю аннотацию @EnableWebMvc, и теперь Spring не может найти мой шаблон Groovy. У меня есть все необходимые зависимости в моем пути к классу Groovy Template, и они включаются в файл свойств. Кажется, что Spring не может полностью решить шаблон Groovy.

ответ

2

WebMvcAutoConfigurationAdapter от Spring загружается по умолчанию от «/» до «/index.html» (в методе addStaticIndexHtmlViewControllers). Поэтому вам необходимо зарегистрировать представление по пути «/index.html».

Это может быть сделано с @RequestMapping("/index.html") на контроллере или с:

@Configuration 
public class WebConfig extends WebMvcConfigurerAdapter 
{ 
    @Override 
    public void addViewControllers(ViewControllerRegistry registry) 
    { 
     registry.addViewController("/index.html").setViewName("index"); 
    } 
} 

Другим вариантом было бы переопределить WebMvcAutoConfigurationAdapter и отключить WebMvcAutoConfiguration.

+0

Спасибо @koe, но этот подход не работает для меня. Он возвращает 404. Затем я добавляю аннотацию @ @ EnableWebMvc и теперь Spring не может найти мой шаблон Groovy. –

+0

Я попробовал первый вариант самостоятельно, и он сработал. Вы пытались использовать переопределить WebMvcAutoConfigurationAdapter? – koe

+0

оцените вашу помощь! Это была моя вина. Похоже, IntellijIdea имеет проблемы с определением шаблонов Groovy и не может разрешить мои взгляды Groovy :( –

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