使用jstl标签报错,求解

kkliuqi 2011-06-02 01:25:55
我用的库是javaee5.0的,自带jstl.2jar。
报错是:

严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /index.jsp(17,18) quote symbol expected
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88)
at org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:200)
at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:150)
at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1234)
at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1449)
at org.apache.jasper.compiler.Parser.parse(Parser.java:133)
at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:216)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:167)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)


jsp代码就那么几句
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>jstl标签练习</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>

<body>
<%
String[] list = new String[]{"张三", "李四", "王五"};
%>

<c:forEach items=list var=name>
${name}
</c:forEach>
</body>
</html>

为什么报这个错呢,标签没问题呀。我换成1.4的库自己导了jstl必须的jar包后还是报错。无奈之下特来csdn向大神求解。
...全文
160 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
liufeng0209 2011-06-02
  • 打赏
  • 举报
回复
<%
String[] list2 = new String[]{"张三", "李四", "王五"};
request.setAttribute("list2", list2);
%>

<c:forEach items="${list2}" var="list2" varStatus="s">
${list2}
</c:forEach>

要先setAttribute,楼主犯了2个错误.
kevinPai2011 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 lyon_z 的回复:]
错误提示很明显了,缺少引号,而且应该写成:
<c:forEach items="<%=list %>" var="name">
${name}
</c:forEach>
[/Quote]
这个是正解!
t69lizhen 2011-06-02
  • 打赏
  • 举报
回复
看看有不有保存数据啊
暖暖猫 2011-06-02
  • 打赏
  • 举报
回复

<c:forEach items="${list}" var="name">
${name}
</c:forEach>

Thinking_In_IT 2011-06-02
  • 打赏
  • 举报
回复
试试这个
<%
String[] list2 = new String[]{"张三", "李四", "王五"};
request.setAttribute("list2", list2);
%>

<c:forEach items="${requestScope.list2}" var="list2" varStatus="s">
${list2}
</c:forEach>
kevin_520_kevin 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 liufeng0209 的回复:]
<c:forEach var="name" items="${list}">
[/Quote]
通过el表达式访问list集合就行了
kkliuqi 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 javajkjiankejk 的回复:]

我还没看完就知道缺少引号了,晕
[/Quote]
加了引号输出为啥是空白?
JAVAJKjiankeJK 2011-06-02
  • 打赏
  • 举报
回复
我还没看完就知道缺少引号了,晕
kkliuqi 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 kaoh1631 的回复:]

quote symbol expected

什么意思,明白么?

缺少""引号
[/Quote]
额,加上引号没错了。咋没输出结果了,一片空白额,为啥?
lyon_z 2011-06-02
  • 打赏
  • 举报
回复
错误提示很明显了,缺少引号,而且应该写成:
<c:forEach items="<%=list %>" var="name">
${name}
</c:forEach>
a243138945 2011-06-02
  • 打赏
  • 举报
回复
<c:forEach var="name" items="${requestScope.list}"> 晕, 你都不引用,肯定报错啊
x50430618 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 liufeng0209 的回复:]

<c:forEach var="name" items="${list}">
[/Quote]
肯定是这样子的啦 list要通过el表达式访问吧
Thinking_In_IT 2011-06-02
  • 打赏
  • 举报
回复
quote symbol expected

什么意思,明白么?

缺少""引号
liufeng0209 2011-06-02
  • 打赏
  • 举报
回复
<c:forEach var="name" items="${list}">
_斑驳旳青春 2011-06-02
  • 打赏
  • 举报
回复
http://java.sun.com/jstl/core
一般好像是这个吧。。
_斑驳旳青春 2011-06-02
  • 打赏
  • 举报
回复
<c:forEach items=list var=name>
${name}
</c:forEach>
你确定你C标签导入对了??
幻想多巴胺 2011-06-02
  • 打赏
  • 举报
回复

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧