Spring MVC не показывает изображения после добавления чванства - PullRequest
0 голосов
/ 09 марта 2020

У меня до весны MVC приложение работало нормально. Но теперь домашняя страница не загружает ресурсы c, и я вижу следующие ошибки

Previously Authenticated: org.springframework.security.authentication.AnonymousAuthenticationToken@bc10afd2: Principal: anonymousUser; Credentials: [PROTECTED]; Authenticated: true; Details: org.springframework.security.web.authentication.WebAuthenticationDetails@b364: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: null; Granted Authorities: ROLE_ANONYMOUS 
 No mapping for GET /css/style.css 
 No mapping for GET /images/logo.png 
 No mapping for GET /css/home.css 
org.springframework.web.servlet.FrameworkServlet[0;39m: Completed 404 NOT_FOUND

Внешний интерфейс - HTML. Это рабочий код на долгое время, и я подозреваю, что добавление чванства прервало загрузку изображений stati c. Из логов я могу сделать вывод, что он правильно ищет путь, но по какой-то причине не отвечает (ниже)


org.springframework.security.web.util.matcher.AntPathRequestMatcher  Checking match of request : '/css/home.css'; against '/css/**'
org.springframework.security.web.util.matcher.AntPathRequestMatcher [0;39m: Checking match of request : '/css/style.css'; against '/css/**'
org.springframework.security.web.util.matcher.AntPathRequestMatcher[0;39m: Checking match of request : '/images/logo.png'; against '/images/**'

Ниже приведен код для настройки безопасности

@Configuration
@EnableWebSecurity
public class SecurityConfigurer extends WebSecurityConfigurerAdapter {
 //...

  @Override
  public void configure(WebSecurity webSecurity) throws Exception {
    webSecurity
      .ignoring()
      .antMatchers(
          "/assets/**",
          "/css/**",
          "/dis/**",
          "/fonts/**",
          "/images/**",
          "/js/**",
          "/resources/**",
          "/static/**",
          "/v2/api-docs",
          "/v2/api-docs/**",
          "/v2/api-docs/swagger-ui.html",
          "/swagger-resources",
          "/swagger-resources/**",
          "/configuration/ui",
          "/configuration/**",
          "/configuration/security",
          "/swagger-ui.html",
          "/webjars/springfox-swagger-ui/**",
          "/webjars/**"
          );
  }

  @Override
  protected void configure(HttpSecurity http) throws Exception {
    String login = "/login";
    http
      .authorizeRequests()
      .antMatchers("/").permitAll()
      .antMatchers(login).permitAll()
      .antMatchers("/forgot").permitAll()
      .antMatchers("/admin/**").hasAuthority("ROLE_ADMIN")
      .antMatchers("/actuator/**").permitAll()
      .anyRequest().authenticated()
      .and().csrf().disable()
      .formLogin().loginPage(login).loginPage("/")
      .defaultSuccessUrl("/default")
   }
}

Здесь конфигурация чванства


@Configuration
@EnableSwagger2
public class SwaggerConfig extends WebMvcConfigurationSupport {
  @Bean
  public Docket productApi() {
    return new Docket(DocumentationType.SWAGGER_2).select()
        .apis(RequestHandlerSelectors.basePackage("com.xyz.abc.controller"))
        .paths(PathSelectors.any()).build();

  }

  @Override
  protected void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
  }
}

Здесь аналогично обсуждение , но я использую текущую версию MVC, поэтому в моем коде

нет конфигурации на основе XML
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...