这个问题似乎已经被问过几次了,但是在检查了太多以至于无法计算之后,我仍然看到了这个问题。
我的Spring MVC项目中的.jsp无法找到任何.css或.js文件,即使它们处于战争状态且给定的文件路径正确。
根据我的配置,我看到两个错误。第一个是:
WARNING: No mapping found for HTTP request with URI [/waypoint/css/bootstrap.min.css] in DispatcherServlet with name 'waypoint'
请注意,没有任何格式或JavaScript,就可以访问我的控制器并且看到该页面。
我通过以下配置看到此错误:
web.xml
<servlet-mapping>
<servlet-name>waypoint</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
waypoint-servlet.xml
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/pages/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
文件结构:
WEB-INF
| - css
| ` - all .css files
| - js
| ` - you guessed it...
| - pages
| ` - all .jsp files
| - waypoint-servlet.xml
` - web.xml
我已经阅读了许多其他使用mvc:resource
标签解决了此问题的文章。
当包含mvc:resource
标记时,我的.jsp文件出现404错误。当我改变servlet映射到会出现这种情况/*
,/**
,/<some- name>/
,和/<some-name>/*
。
我也尝试过将静态文件移至WEB-INF文件夹之外:
| - resources
| | - css
| | ` css...
| | - js
| ` js...
| - WEB-INF
正如我提到的,我为上述mvc:resource
两种文件结构尝试了许多不同的标记映射组合。一些示例包括:
<mvc:resources mapping="waypoint/resources/css/**" location="/resources/css/" />
<mvc:resources mapping="resources/css/**" location="/resources/css/" />
<mvc:resources mapping="css/**" location="/resources/css/" />
<mvc:resources mapping="css/**" location="WEB-INF/css/" />
<mvc:resources mapping="css/**" location="css/" />
我也在.jsp方面尝试了以下内容的组合:
<link href="classpath:/resources/css/bootstrap.min.css" rel="stylesheet" type="text/css">
<link href="../css/bootstrap.min.css" rel="stylesheet" type="text/css">
<link href="<c:url value="../resources/css/bootstrap.min.css"/>" rel="stylesheet" type="text/css" />
<link href="<c:url value="../css/bootstrap.min.css"/>" rel="stylesheet" type="text/css" />
在此之前,有没有人经历过此事?这将不胜感激。如果您需要其他任何信息,请告诉我。
谢谢。
解
通过将 .css和 .js的servlet映射添加到fefault servlet中,我能够解决此问题:
<servlet-mapping>
<servlet-name>waypoint</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
这需要删除<mvc:resource>
标签。我还需要使用文件夹resource/css/
外部的WEB- INF
目录。我在JSP中引用了js和css文件,如下所示:
<link href="<c:url value="/resources/css/bootstrap.min.css"/>" rel="stylesheet" type="text/css" />
谢谢阅读!
我不确定为什么该<mvc:resources>
标签在您的情况下不起作用,因为它应该从Spring
3.2.0起开始使用。在您的代码中添加以下几行web.xml
,这是不安网址的常见问题
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/images/*</url-pattern>
</servlet-mapping>
您需要将文件放置在web-inf之外,以使其对截获的请求可见。
一个很好的教程在这里
我已经安装了菲奥娜,Shauley,GDAL,RTER和PYPRJ的WHL文件。Geopandas也通过pip安装。但在导入时,我会遇到以下错误: 以及以下错误: 有人能帮我吗?我不知道如何解决这个问题。谢谢和问候。
问题内容: 我正在尝试使用Gradle运行一个非常简单的项目,并在使用时遇到以下错误: 这是我的文件结构: 我排除了libs和tmp文件夹的内容,因为我认为这与该问题无关,但是我可以在需要时添加它。 这是我的build.gradle文件: 关于如何解决此问题的任何想法?我已经为mainClassName属性尝试了各种方法,但似乎没有任何效果。 问题答案: 我在这里看到两个问题,一个与另一个有关。
我的java应用程序编译有问题。 编译器说:
我是按照Spring的教程,一切都工作正常,直到我克隆我的项目,现在克隆的项目和原来的项目不想工作,我已经搜索槽整个堆栈溢出类似的问题,我无法解决这个问题,我已经清理了项目,重新启动eclipse,更新,添加和删除依赖项从pom.xml似乎没有什么工作。 这是我的主要课程: Beans.xml: 波姆。xml: 正如我所说,当我在同一个工作区复制粘贴项目时,一切都开始失败,当然我更改了名称。 这个
我用的是软呢帽19。HelloWorld的内容。爪哇: 我可以使用 javac HelloWorld。JAVA 但我无法使用 java HelloWorld 它给出了以下错误 错误:无法找到或加载主类HelloWorld 但我可以用 sudo java HelloWorld 我错过了什么???
我知道这个问题已经被回答过很多次了,但不幸的是我找不到我的问题的正确答案。 以下是我的软件包结构,在我的软件包中,我有简单测试.java d: \junit\src\junitfaq\SimpleTest.java 在d:\junit\src内部 d:\junit\src 但是当我尝试使用下面的命令行运行程序时 d:\junit\src 发生了此错误。错误:无法找到或加载主类junitfaq.Si
问题内容: 我想连接我的java程序以连接数据库并检索数据。它的编译完美,但运行时即时得到这个 我已经安装了Java SQL驱动程序,并将jar路径作为CLASSPATH添加到环境变量中 问题答案: 您应该从这里下载驱动程序 和JAR文件需要添加到项目类路径。 首先,右键单击Eclipse Project,然后单击Project-> Build Path-> Configure Build Pat
我有两个套餐和课程第一个套餐 D:\User\java\java\u programs\mypackage\A.java C中还有一个B类:\Package1\B. java 我编辑 C+++包 它为A.java和B.java创建了类文件 但我不能运行我的代码 我试过了 但是错误 错误:无法找到或加载主类包1。B