Я создаю приложение Spring Boot с Thymeleaf. Мои шаблоны (представления) и статические папки находятся в разделе src/main/resources/static и src/main/resources/templates. Когда я запускаю приложение с помощью основного метода (используя eclipse), все в порядке. Тем не менее, я выполнил инструкции до create a war file, и когда я развожу его на Tomcat 7 - статический контент отсутствует, отображаются только шаблоны html Thymeleaf.Статический контент Spring Boot & Thymeleaf не подан в военном файле
Я искал все связанные потоки на SO и пробовал множество вариаций - используя @EnableWebMVC, удалив всю мою конфигурацию, изменив имя статической папки на «public» и т. Д. Ничто не работает для меня, и это выглядит как проблема с упаковкой.
Мой класс конфигурации:
@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {
@Autowired
private ThymeleafProperties properties;
/* Disable Thymeleaf auto-caching */
@Bean
public ITemplateResolver defaultTemplateResolver() {
TemplateResolver resolver = new TemplateResolver();
resolver.setResourceResolver(thymeleafResourceResolver());
resolver.setPrefix(this.properties.getPrefix());
resolver.setSuffix(this.properties.getSuffix());
resolver.setTemplateMode(this.properties.getMode());
resolver.setCharacterEncoding(this.properties.getEncoding());
resolver.setCacheable(false);
return resolver;
}
@Bean
public SpringResourceResourceResolver thymeleafResourceResolver() {
return new SpringResourceResourceResolver();
}
}
класса с основным методом:
@SpringBootApplication
public class RestApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(RestApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(RestApplication.class, args);
}
}
Почему вы определяете отдельный бит-резольвер thymeleaf? Использование Spring Boot уже создано. И если вы используете тимелеаф, почему бы вам не задать статический путь, подобный этому: src = "@ {css/style.css}". Это будет относиться к пути «ресурсы» –