我使用spring为我的项目,我排除了所有模板文件到另一个“HTML项目”。我这样做是因为我可以在没有任何重新部署的情况下进行更改,而且对我来说,它的方式更加清晰。它工作良好,spring应用程序找到所有模板。但现在,模板找不到任何css或js文件。模板试图搜索我的spring项目中的文件,但它们包含在html项目中。我该怎么修好它?我想我需要一条相对路径。
项目
SpringApp
-----lib
-----src
---------main
---------Java
-----------com.example.test
---------------------controller
-------------showindex.Java
-----------------------------------resources
-----------webApp
-----------test
showindex.java的内容
@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index(ModelMap model) {
model.put("prename", "Hans-Peter");
return "index";
}
index.ftl的HeaderContent
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="./css/bootstrap.min.css">
<link rel="stylesheet" href="./css/zeus.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
有什么想法吗?
我使用:
Java
spring WebMVC
Freemarker作为模板引擎
将CSS
、JS
、图像
放入src/main/webapps
文件夹,与模板FTL
文件分开。
编辑
使用Servlet3.0,您有另一种选择,但可能不是在所有容器中都能工作...
元INF/resources
文件夹JS、css、图像
等放入此文件夹例如,我创建了一个assembly.xml
文件来自动化这项工作
<assembly>
<id>bin</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>/</outputDirectory>
<excludes>
<exclude>**</exclude>
</excludes>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>target/classes</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>**/*.class</include>
</includes>
<excludes>
<exclude>**/DefaultController.class</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>WebContent</directory>
<outputDirectory>META-INF/resources</outputDirectory>
<includes>
<include>/WEB-INF/jsp/**</include>
</includes>
</fileSet>
<fileSet>
<directory>WebContent</directory>
<outputDirectory>META-INF/resources</outputDirectory>
<includes>
<include>js/**</include>
<include>plugins/**</include>
</includes>
</fileSet>
</fileSets>
</assembly>
当使用maven构建MVN包
时,该文件可以工作。
附注:
在mavenpom.xml
中:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>
我有以下bean配置 以下函数用于发送解析模板和发送电子邮件。 但这会给出一个FileNotFound异常。
我正在开发spring boot 2 thymeleaf web应用程序。我想从jar文件中呈现一个模板及其静态资源。js、CSS和消息出现404错误。属性文件,而模板正在浏览器上渲染,但相关的js、css没有。为了从jar文件呈现模板,我配置了ClassLoaderTemplateResolver,如下所述: 其中getCustomClassloader()将返回加载我的测试的URLclassl
我提到了很多关于某某甚至Spring的其他问题。关于spring boot的io指南,我的理解是,我们应该将html模板保存在templates文件夹和所有其他文件夹中。css、图像、。静态文件夹中的js文件。我也做了同样的事情,但每当加载页面时,只会呈现html,浏览器就会得到404。css和。js文件。 我必须包括在内。css和。以以下方式在我的HTML中使用js: 我尝试了所有的组合,比如:
我试图通过Django制作一个新网站的主页。我的应用程序名称是“博客”,主页是home.html当我去http://127.0.0.1:8000/blog/home/时,我仍然收到错误模板不存在 我确保在settings.py中将“blog”添加到我的模板中,并在主目录中以及通过blog/templates/blog/home.html添加文件夹模板 myproject/blog/views.py
当我使用Spring Boot1.4.0+Thymeleaf时,我发现静态资源无法访问,并抛出错误“模板可能不存在或任何配置的模板解析器都无法访问”。 关于我的静态资源的文件夹结构 浏览器显示500错误
我是Spring Boot的新手,我的问题是我有Spring Boot项目,我打算用Thymeleaf查看我的超文本标记语言页面,但Spring无法解析我的JavaScript和CSS文件。 这是我的胸腔构造 这是我的HTML页面标题: