Java SpringWebjars定位器和上下文路径

Java SpringWebjars定位器和上下文路径,java,spring,spring-mvc,spring-security,spring-boot,Java,Spring,Spring Mvc,Spring Security,Spring Boot,我有一个启用了Spring安全性的Spring引导应用程序,配置如下: @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers("/", "/home", "/webjars/**", "/css/**").permitAll()

我有一个启用了Spring安全性的Spring引导应用程序,配置如下:

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/", "/home", "/webjars/**", "/css/**").permitAll()
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .logout()
                .permitAll();
    }
server:
   context-path: /myapp
在我更改上下文路径之前,一切正常。例如,如果我这样设置它:

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/", "/home", "/webjars/**", "/css/**").permitAll()
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .logout()
                .permitAll();
    }
server:
   context-path: /myapp
我无法访问我的WebJAR、css。。。他们仍然被注视着:


如何配置SpringWebjars,使其在不考虑上下文路径的情况下工作?

好的,我解决了这个问题

我忘了请求Thymeleaf引擎处理CSS和js文件的相对路径。因此,基本上我在模板中更改了以下内容:

<link rel="stylesheet" type="text/css" href="/webjars/bootstrap/css/bootstrap.min.css" />

为此:

<link rel="stylesheet" type="text/css" th:href="@{/webjars/bootstrap/css/bootstrap.min.css}" />


WebMVCConfigureAdapter的配置是什么?配置如下:registry.addViewController(“/home”).setViewName(“home”);registry.addViewController(“/”).setViewName(“主”);registry.addViewController(“/hello”).setViewName(“hello”);registry.addViewController(“/login”).setViewName(“login”);