我最近在努力学习Spring,而且我显然做错了什么。我很确定此问题已经解决过。我尝试了很多已发布的解决方案,似乎没有任何工作,我错过了一些东西。
它是一个简单的JSP,带有一个用于访问简单javascript的按钮。这是我得到的错误:
springframework.beans.factory.xml.XmlBeanDefinitionStoreException:来自ServletContext资源[/WEB-INF/springServlet-servlet.xml]的XML文档中的第15行无效;嵌套异常是org.xml.sax.SAXParseException; lineNumber:15; columnNumber:68; cvc-complex-type.2.4.c:匹配的通配符是严格的,但是没有找到元素&m; mvc:resources'的声明。
我知道这个错误来自我的XML文件:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<context:component-scan base-package="com.wipro.controller" />
<mvc:resources mapping="/resources/**" location="/resources/js/"/>
<mvc:annotation-driven/>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
正如你所看到的那样,标签mvc:resources就在那里,我不知道它是不是写得不好或者我错过了一个属性,而且我已经不在了消息来源。
这是我的JSP和我的脚本,它适用于snipplet,但是当我在tomcat上运行时,按钮没有做任何事情:
function btnFunction(){
alert("hello!");
}
&#13;
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
<style type="text/css">
div{
padding-left: 30px;
width: 30%;
}
</style>
<script src="<c:url value="/resources/js/script.js" />" type="text/javascript"></script>
<title>Index</title>
</head>
<body>
<h1 class="display-4">INDEX</h1>
<div>
<ul class="list-group">
<li>
<a href="listBooks.html" class="list-group-item list-group-item-info">BOOK DETAILS</a>
</li>
</ul>
<button onclick="btnFunction()">CLICK</button>
</div>
</body>
</html>
&#13;
我不知道这是否重要,但我没有使用Maven,只是一个动态Web应用程序,我还展示了项目结构,以防万一: