web-dev-qa-db-ja.com

SpringBootとThymeleafを使用した静的リソースのロード

静的リソースをロードしたい。最初はすでに機能していると思いましたが、それはブラウザキャッシュのトリックにすぎませんでした。期待どおりにHTMLファイルが読み込まれるだけですが、js、css、画像などは取得されません。

======

私のStartClass:

@Configuration
@Import({ ServiceConfig.class, WebMvcConfig.class })
@EnableHypermediaSupport(type = HAL)
@EnableAutoConfiguration
public class ApplicationClientMvc {
    public static void main(final String[] args) {
        SpringApplication.run(ApplicationClientMvc.class, args);
    }
}

======

WebMvcConfig

@Configuration
@ComponentScan
public class WebMvcConfig extends WebMvcConfigurationSupport {

    @Autowired public SpringTemplateEngine templateEngine;

    @Bean
    public ThymeleafTilesConfigurer tilesConfigurer() {
        final ThymeleafTilesConfigurer configurer = new ThymeleafTilesConfigurer();
        configurer.setDefinitions("classpath*:/templates/**/views.xml");
        return configurer;
    }

    @Bean
    public ThymeleafViewResolver thymeleafViewResolver() {
        final ThymeleafViewResolver resolver = new ThymeleafViewResolver();
        resolver.setViewClass(ThymeleafTilesView.class);
        resolver.setTemplateEngine(templateEngine);
        resolver.setCharacterEncoding(UTF_8);
        return resolver;
    }

    @Bean
    public TilesDialect tilesDialect() {
        return new TilesDialect();
    }

    //

    @Value("${server.session-timeout}") private Long sessionTimeOut;

    @Override
    public void configureAsyncSupport(final AsyncSupportConfigurer configurer) {
        configurer.setDefaultTimeout(sessionTimeOut * 1000L);
        configurer.registerCallableInterceptors(timeoutInterceptor());
    }

    @Bean
    public TimeoutCallableProcessingInterceptor timeoutInterceptor() {
        return new TimeoutCallableProcessingInterceptor();
    }
}

======

私のプロジェクトリソース

enter image description here

=====

リソースへのアクセス

リソースを取得しようとするさまざまなスタイル、それらのどれも機能しません!!!

enter image description here

6
Michael Hegner

さて、それは私を助けました:

WebMvcConfigで、WebMvcConfigurationSupportWebMvcAutoConfigurationAdapterに変更しました

enter image description here

そのモジュールについてもっと知りたい場合は、より良い概要を見つけてください Stackoverflow-Link

6
Michael Hegner

パスにstaticは必要ありません。 /css/bbs-login.cssをお試しください。

5
Andy Wilkinson