我是Java和Spring的新手。我在尝试应用CSS样式时遇到错误。 这是我的jsp:
<jsp:root version="1.2" xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:display="urn:jsptld:http://displaytag.sf.net"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:spring="http://www.springframework.org/tags">
<jsp:directive.page contentType="text/html; charset=UTF-8" />
<jsp:directive.page import="test1.domain.*" />
<html>
<head>
<title>CD Catalog</title>
<link href='<c:url value="/css/displaytag.css" />' rel="stylesheet" type="text/css" />
</head>
and so on...
css文件夹与WEB-INF在同一级别。
在我的servlet.xml中,我有:
<mvc:resources mapping="/**" location="/*" />
我得到的下一个错误:
HTTP状态500 - /WEB-INF/jsp/test_task.jsp(11,15)与元素类型“null”关联的属性“href”的值不得包含“&lt;”字符。
我还尝试了单引号和双引号,并尝试了相同的双引号,但没有成功。
我很感激任何建议。 提前谢谢。
答案 0 :(得分:7)
请在标题中添加标记库声明<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
。 taglib指令声明您的JSP页面使用一组自定义标记(此处为c:url
),并标识库的位置。如果没有该指示,您的JSP文件将以(href
)属性结束,该属性包含未转义的<
字符,该字符不是有效的XML。
<强>更新强>:
只是意识到您正在使用JSP文档而不是JSP页面,并且您已经声明了名称空间xmlns:c
,因此不再需要taglib。由于JSP文档严格要求格式良好的XML文档,因此它会抱怨您的链接的href属性(内部未转义为<
)。为避免这种情况,请尝试:
<c:url var="url" value="/css/displaytag.css" />
<link href="${url}" rel="stylesheet" type="text/css" />