javascript - 为什么在 Spring-MVC 4 中加载 css/js 时出现 HTTP 405 错误?

标签 javascript java css spring-mvc

@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}


@Bean
public ViewResolver viewResolver() {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver();
    resolver.setPrefix("/WEB-INF/views/");
    resolver.setSuffix(".jsp");
    return resolver;
}

forward 是 MvcConfig.java。 如您所见,我为静态资源添加了资源处理程序。

private void addDispatcherServlet(ServletContext servletContext)
{
    AnnotationConfigWebApplicationContext applicationContext = new AnnotationConfigWebApplicationContext();
    applicationContext.getEnvironment().addActiveProfile("production");
    applicationContext.register(MvcConfig.class);

    ServletRegistration.Dynamic dispatcher = servletContext.addServlet("dispatcher", new DispatcherServlet(applicationContext));
    dispatcher.setLoadOnStartup(1);
    dispatcher.addMapping("/");
    dispatcher.setInitParameter("dispatchOptionsRequest", "true");
} 
private void addUtf8CharacterEncodingFilter(ServletContext servletContext)
{
    FilterRegistration.Dynamic filter = servletContext.addFilter("CHARACTER_ENCODING_FILTER", CharacterEncodingFilter.class);
    filter.setInitParameter("encoding", "UTF-8");
    filter.setInitParameter("forceEncoding", "true");
    filter.addMappingForUrlPatterns(null, false, "/*");
}

还有Initializer.java

这是我的资源层次结构。

src
  -main
    --java
    --resources
    --webapp
      ---WEB-INF
         ----resources
             -----css
                  ------ signin.css
         ----views

在index.jsp中,我这样调用了signin.css。

<link href="/resources/css/signin.css"  rel="stylesheet">

然后,我可以找到这些错误信息。

WARN [2017-03-07 14:37:49] ({http-bio-8080-exec-14} DefaultHandlerExceptionResolver.java[handleHttpRequestMethodNotSupported]:215) - Request method 'GET' not supported
WARN [2017-03-07 14:37:49] ({http-bio-8080-exec-15} DefaultHandlerExceptionResolver.java[handleHttpRequestMethodNotSupported]:215) - Request method 'GET' not supported

在chrome浏览器中,同样出现405错误。 [405-错误屏幕截图][1][1]:/image/vmDlk.png

我该如何解决?

最佳答案

你能改变吗

<link href="/resources/css/signin.css"  rel="stylesheet">

<link href="${pageContext.request.contextPath}/resources/css/signin.css"  rel="stylesheet">

关于javascript - 为什么在 Spring-MVC 4 中加载 css/js 时出现 HTTP 405 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42641013/

相关文章:

javascript - 无法使用带有 javascript 和 jest 框架的 selenium 来关闭自动化中的 cdk 下拉列表

javascript - 问题更新 css 转换的 div 的高度(FlexBox,Sass)

java - 在 Eclipse 中的 Android 项目中使用预处理器

java - Camel RabbitMQ 到 REST 端点 SpringBootTest 失败

c# - Winforms 托管 Javascript 内容

java - 如何为 Rest API 创建 SSL?

javascript - 无法在 html 和 css 中正确设置 ul 和 li

html - 具有初始和 url() 的多个背景图像

javascript - 如果页面上不存在 div,JQuery ui 选项卡会删除/隐藏 <ul> 中的 <li>

javascript - 内容安全策略不从本地主机加载文件