我已经从stackoverflow和其他网站上阅读了许多文章,以便在我的Spring MVC应用程序上加载我的css文件和图像。然而,我总是得到一个严格的MIME类型错误。(现在这让我很恼火。)
我需要帮助,伙计们!!
我已经阅读了下面的文章来寻找解决方案。
1)胸腺3Spring5负载css
2) 使用spring security和thymeleaf时无法加载我的css
3)无法在Spring和thymeleaf中添加css文件
4)未找到带胸腺的SpringBoot-css
5)加载资源(图像/css)的Springmvc问题
1) 网络安全配置
@Override
public void configure(WebSecurity web) throws Exception {
// Enable access to my local static resources
web.ignoring().antMatchers("/resources/**", "/static/**", "/css/**", "/js/**", "/images/**", "/vendor/**", "/fonts/**");
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.eraseCredentials(true)
.userDetailsService(userDetailsService)
.passwordEncoder(passwordEncoder());
//add our users for in memory authentication
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/index")
.permitAll()
.usernameParameter("userName")
.passwordParameter("password")
.loginProcessingUrl("/authenticate")
.defaultSuccessUrl("/result")
.failureUrl("/login/failure")
;
}
2)我的MVCConfigFile
@Bean
public SpringTemplateEngine templateEngine() {
SpringTemplateEngine engine = new SpringTemplateEngine();
//engine.addDialect(new SpringSecurityDialect());
engine.setTemplateResolver(templateResolver());
return engine;
}
@Bean
public ThymeleafViewResolver thymeleafViewResolver() {
ThymeleafViewResolver viewResolver = new ThymeleafViewResolver();
viewResolver.setTemplateEngine(templateEngine());
viewResolver.setCharacterEncoding("UTF-8");
viewResolver.setOrder(1);
return viewResolver;
}
/**
* Using Custom Resource Path
*/
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// Register resource handler for CSS and JS
if (!registry.hasMappingForPattern("/resources/**")) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/**")
.setCacheControl(CacheControl.maxAge(2, TimeUnit.HOURS).cachePublic());
}
// Register resource handler for images
if (!registry.hasMappingForPattern("/images/**")) {
registry.addResourceHandler("/images/**").addResourceLocations("/images/**")
.setCacheControl(CacheControl.maxAge(2, TimeUnit.HOURS).cachePublic());
}
}
3)查看(html)
我正试图通过以下方式加载css文件:
<!doctype html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
<meta name="description" content=""/>
<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"/>
<meta name="generator" content="Jekyll v3.8.5"/>
<title>Navbar Template · Bootstrap</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<link rel="stylesheet" th:href="@{/static/css/style.css}" type="text/css" />
还有我的图像文件
<div class="container">
<div class="row">
<!-- Carousal -->
<div class="col-md-8">
<div class="panel panel-default">
<div class="panel-body">
<!--カルーセルのタグ。いじるのはオススメしない。-->
<div id="carousel-example" class="carousel slide" data-ride="carousel">
<!--ここで好きな枚数のスライドを作れる。imgタグのscr内に好きな画像を入れよう。-->
<div class="carousel-inner">
<!--後ろにactiveをつけたものが最初に表示されるよ。-->
<div class="carousel-item active">
<img class="d-block w-100" src="http://lorempixel.com/output/sports-q-c-1600-500-1.jpg"
alt="Picture1">
<div class="carousel-caption">
<h4>First Thumbnail</h4>
<p>Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots
in a
piece of classical Latin literature from 45 BC, making it over 2000 years
old. </p>
</div>
</div>
<div class="carousel-item">
<img class="d-block w-100" src="http://lorempixel.com/output/sports-q-c-1600-500-3.jpg"
alt="Picture2">
</div>
<div class="carousel-item">
<img class="d-block w-100" src="http://lorempixel.com/output/sports-q-c-1600-500-2.jpg"
alt="Picture3">
</div>
</div>
<!--これはスライドの「進むボタン」と「戻るボタン」。いらないなら無くていい。-->
<a class="carousel-control-prev" href="#carousel-example" role="button" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#carousel-example" role="button" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
<!--こちらはスライドの枚数や現在地がわかるあれ。いらないならn(ry-->
<ol class="carousel-indicators">
<li data-target="#carousel-example" data-slide-to="0" class="active"></li>
<li data-target="#carousel-example" data-slide-to="1"></li>
<li data-target="#carousel-example" data-slide-to="2"></li>
</ol>
</div>
</div>
</div>
</div>
<div class="col-md-2">
<img th:src="@{/images/logo.png}"/>
</div>
</div>
</div>
加载资源失败:服务器以404()2style的状态响应。css:1
加载资源失败:服务器的响应状态为404()
我的文件夹结构:
文件夹结构
我哪里出错了?
正确的文件夹命名是src/main/resources/static
而不是statics
。尝试将您的结构更新为此命名。如果有一天你迁移到Spring Boot,你会发现最符合这个惯例。
我使用intelliJ IDEA中的maven webapp原型创建了一个spring项目。我正在使用tomcat插件和maven插件。我可以在app name/home路径上运行这个应用程序,但是css和图像没有加载,它显示的是简单的文本和图像表情。 在项目内部,我创建了ApplicationInitializer类,这很好,ApplicationConfig看起来像这样- 下面是文件夹结构-
在使用spring security和Thymeleaf时,我无法加载我的css文件。 每当我使用rel=“stylesheet”时,它都会给我带来严格的MIME启用错误。 我的Spring安全代码:
问题内容: 我目前正在编写一个程序,需要以jar形式发送给朋友。该程序具有需要加载的图像,以便程序正常运行,我希望所有图像都包含在一个jar中。目前,它无法从可执行jar或通过命令行运行时运行。它可以在netbeans中工作。 这是我正在使用的代码: 要加载我正在使用的图像: 对于我也尝试过的网址 应该在其中创建图像的行是: 我的jar文件设置为在其顶层包含类文件的文件夹和资源文件夹。 我一直在寻
我在我的Android应用程序中使用滑翔进行图像加载,以避免任何崩溃,我正在加载带有应用程序上下文的图像。这会对应用程序和内存的性能产生什么影响?
我正在处理一个Spring Boot应用程序,其中我使用该应用程序公开SOAP WebService。我在Spring boot应用程序中使用Apache CFX framework for SOAP impl。我正在使用基于注释的方法。 我在一个bean中的Spring Boot配置文件中设置应用程序上下文时遇到了问题。下面是我的代码。 配置文件如下所示。 现在我有了bean SOAPproce
问题内容: 我有一个简单的Chrome扩展程序,该扩展程序使用内容脚本功能来修改网站。更具体地说,所述网站。 由于某些原因,即使扩展中打包了本地图像,我似乎也无法使用它。 就是这样,最简单的CSS …但是它不起作用。浏览器不会加载图像。 问题答案: 您的图片网址应类似于 您最好通过JavaScript替换CSS。