当前位置: 首页 > 面试题库 >

addResourceHandlers无法解析静态资源

任云瀚
2023-03-14
问题内容

我的maven spring项目目录结构如下所示。我正在使用基于Spring-4注释的配置。我按如下方式配置资源。我尝试了许多Stackoverflow问题和其他网站中建议的许多方法

但是jsp文件无法加载资源,所有静态内容请求均返回404错误。我在jsp中尝试了这些东西,

 <link href="resources/css/bootstrap.css" rel="stylesheet" media="screen">
 <link href="/resources/css/bootstrap.css" rel="stylesheet" media="screen">
 <link href="css/bootstrap.css" rel="stylesheet" media="screen">

编辑:我正在使用Servlet 2.5,因为到目前为止,我无法将项目从JBoss 5升级到更高版本。JBoss5不支持Servlet 3,这有关系吗?

@Configuration
@ComponentScan("com.mgage.mvoice")
public class MyAppWebConfig extends WebMvcConfigurerAdapter {
     public void addResourceHandlers(ResourceHandlerRegistry registry) {  
        // I tried these many combinations separately.

        ResourceHandlerRegistration resourceRegistration = registry
            .addResourceHandler("resources/**");
        resourceRegistration.addResourceLocations("/resources/**");
        registry.addResourceHandler("/css/**").addResourceLocations("/css/**");
        registry.addResourceHandler("/img/**").addResourceLocations("/img/**");
        registry.addResourceHandler("/js/**").addResourceLocations("/js/**");
        registry.addResourceHandler("/resources/**")
                .addResourceLocations("classpath:/resources/"); 
              // do the classpath works with the directory under webapp?
     }

}

问题答案:

这有效

   registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");

在jsp文件中,我指的是静态资源,例如

<link href="resources/css/bootstrap.css" rel="stylesheet" media="screen">


 类似资料:
  • 在我的VC++2008项目中,我创建了两个文件globals.h和globals.cpp,如下所示: glboals.h: globals.cpp: 然后我在另一个文件testglboaldlg.cpp中使用全局变量,如下所示: 但得到以下链接错误:

  • 我试图使用相对路径在jsp文件中加载静态资源,如css文件和javascript文件,但servlet映射似乎覆盖了对它们的映射。 项目结构: web.xml: mvc调度程序servlet。xml: 我尝试加载样式表的JSP文件: 我得到的错误是: 警告组织。springframework。网状物servlet。PageNotFound:1108-在名为“mvc dispatcher”的Disp

  • 我试图提供一个静态资源(css文件)。 我已经注册了位置和处理程序 所以Tomcat的记录器显示到资源的正确映射 将URL路径[/resources/**]映射到类型为[类org.springframework.web.servlet.resource.ResourceHttpRequestHandler]的处理程序上 当浏览器呈现视图时,检查器显示404错误,试图获取静态资源。 应用初始化器。J

  • 本文向大家介绍springboot2版本无法加载静态资源问题解决,包括了springboot2版本无法加载静态资源问题解决的使用技巧和注意事项,需要的朋友参考一下 前言 在学习springboot的过程中,发现无法引用静态资源。我使用的是springboot2.2.1版本。 追溯源码,终于解决。并记录下解决思路。 默认加载路径 首先得知道springboot默认加载得资源路径是什么。 首先我们看W

  • 我的问题很简单。我无法在Spring中加载静态资源,下面是我的配置文件。 dispatcher servlet。xml 网状物xml 我已将js和css文件放入/webapp/resources/css和/webapp/resources/js中。 我知道这个问题已经被解决了很多次,但我无法加载静态资源。我得到405浏览器上没有方法错误。 在网上尝试了所有其他解决方案。请告诉我哪里出了问题。对这些

  • 当应用程序在AWS Elasticbeanstrok上运行时,有人知道如何从资源文件夹中读取文件吗? 请参阅下面的代码: 这是错误消息: JAVA木卫一。FileNotFoundException:类路径资源[application.properties]无法解析为绝对文件路径,因为它不位于文件系统:jar:file:/var/app/current/application中。罐子/BOOT-IN