【发布时间】:2014-06-06 10:50:06
【问题描述】:
我得到了一个 Spring MVC 应用程序,其中包含一堆当前放置在 src/main/java/resources/assets 目录中的 css 和 js 文件。
我阅读了 Spring Docs 和一些关于如何使用 ResourceHandlerRegistry 类为我的模板加载这些文件的教程。我特别认为this Tutorial 的代码 sn-ps 非常适合我的项目结构。
但我的资源文件总是出现 404。
这是我目前正在运行的应用程序/配置类:
@Configuration
@EnableAutoConfiguration
@ImportResource("/applicationContext.xml") // only used for jpa/hibernate
@EnableWebMvc
@ComponentScan(basePackages = "at.sustain.docutools.viewer.presentation")
public class Application extends WebMvcConfigurerAdapter {
public static void main(String args[]) {
SpringApplication.run(Application.class);
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/assets/**")
.addResourceLocations("classpath:/assets/");
registry.addResourceHandler("/css/**")
.addResourceLocations("/css/");
registry.addResourceHandler("/js/**")
.addResourceLocations("/js/");
}
}
这里有一个在我的 HTML 文件中使用的 HEADer(放置在资源/模板中):
<head>
<!-- local Stylesheet -->
<link href="css/style.css" rel="stylesheet" />
<!-- local Javascript files -->
<script src="js/general.js"></script>
<script src="js/xmlhttp.js"></script>
<!-- local Javascript libraries -->
<script src="js/lib/filter.js"></script>
<script src="js/lib/jquery.fs.zoomer.js"></script>
<script src="js/lib/jquery.validate.js"></script>
</head>
通过我的控制器类正确加载了 html 文件,但是当尝试点击例如我的 style.css 文件 (http://localhost:8080/css/style.css) 我得到了一个已经提到的 404。
我似乎找不到更多资源可以为我提供有关 Spring 4 的更多信息。我错过了一些配置文件吗?还是资源处理程序注册不适合我的结构?我期待您的回复。
【问题讨论】:
标签: java css spring spring-mvc