我是Spring MVC的新手,我正在尝试在JSP中“包含”一个JS文件。
我的文件夹结构是:
webapp
- WEB-INF
- scripts
- META-INF
- - jsp
- - - myFile.jsp
我正在尝试使用以下代码在myFile.jsp中的scripts文件夹中包含一个js文件:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Highstock Example</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="<c:url value="/scripts/1.js" />"></script>
<script type="text/javascript">
$(function()
{...
我正在尝试使用1.js中的代码。
这是我的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>Spring3-Hibernate</display-name>
<welcome-file-list>
<welcome-file>list.html</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--<context-param>-->
<!--<param-name>contextConfigLocation</param-name>-->
<!--<param-value>/WEB-INF/applicationContext.xml</param-value>-->
<!--</context-param>-->
<!--<listener>-->
<!--<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>-->
<!--</listener>-->
</web-app>
问题是,当点击所需的页面时,JSP会加载但是我在firebug中获得404,因为浏览器无法访问1.js. (我已经检查过,文件在那里:)
任何建议都会有所帮助, 感谢
答案 0 :(得分:0)
你让控制器处理你的所有要求:
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
所以你的1.js和所有其他文件将转到spring servlet调度程序。并且您没有此URL的映射:控制器或视图解析器或静态资源映射。