Исправить путь к папке. css с помощью Thymeleaf (Spring Boot) - PullRequest
1 голос
/ 20 июня 2020

Я работаю над проектом с Spring Boot. У меня есть файл main. css в папке /src/main/resources/static/css/

Я использую этот код тимелеафа для вставки файла. css в файл. html из папки / templates:

<link rel="stylesheet" th:href="@{/css/main.css}" href="../static/css/main.css" />  

Я могу открыть его, соответственно, через http://localhost:1126/css/main.css

Я использую это. html в качестве подробной страницы ошибок. Так что, если URL не существует, покажите это. html. Если URL-адрес имеет "одну глубину" (например, localhost:1126/something), он работает нормально (отображается. html и загружается. css). Но если я использую URL-адреса как минимум с «двумя глубинами» или даже с «/» в конце (например, localhost:1126/something/ или localhost:1126/something/anything), это не сработает (отображается. html, но. css НЕ загружено).

Проблема в том, что во втором случае Spring пытается найти файл. css в localhost:1126/something/css/main.css

Вещи, которые я пробовал до сих пор: используйте th:href="@{/css/main.css}" вместо th:href="@{css/main.css}"

AND

@SpringBootApplication
@EnableWebMvc
public class SpringBootProjectApplication implements WebMvcConfigurer {
    public static void main(String[] args) {
    SpringApplication.run(SpringBootProjectApplication.class, args);
    }
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/css/**").addResourceLocations("classpath:/css/");
    }
}

Я нашел эти темы без ответов на мою проблему:

Thymeleaf , IntelliJ и Spring Boot не загружают CSS файлы правильно Spring Boot, Thymeleaf и CSS CSS файл не может быть обнаружен тимелист Spring Boot

1 Ответ

0 голосов
/ 20 июня 2020

Spring boot по умолчанию BasicErrorController будет напрямую смотреть на папку src / main / resources / templates /, если вы добавите туда свою страницу с ошибкой html как «error. html», вы можете показать это всякий раз, когда возникает ошибка

...