老师,出500错误

来源:2-10 JSTL遍历集合

勤劳学生

2020-05-25 23:00:44

老师请检查代码

package com.imooc.jstl;

public class Company {
	private String cname;
	private String url;

    public Company(String cname,String url) {
    	this.cname=cname;
    	this.url=url;
    }
	public String getCname() {
		return cname;
	}

	public void setCname(String cname) {
		this.cname = cname;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}
}
package com.imooc.jstl;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class JstlServlet
 */
@WebServlet("/jstl")
public class JstlServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public JstlServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setAttribute("score", 58);
		request.setAttribute("grade", "B");
		List list=new ArrayList();
		list.add(new Company("腾讯","www.tencent.com"));
		list.add(new Company("百度","www.baidu.com"));
		list.add(new Company("慕课网","www.imooc.com"));
		request.setAttribute("companies",list);
     	request.getRequestDispatcher("/core.jsp").forward(request,response);
	}

}
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!-- 在java或者JSP文件中输入 command +/ 可出现智能提示 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
  <h1>${requestScope.score }</h1>
  <c:if test="${score>= 60 }">
  <h1 style ="color:green">恭喜,你已通過測試</h1>
  </c:if>
  <c:if test="${score<60 }">
  <h1 style="color:red">對不起,再接再厲</h1>
  </c:if>
  
  <!-- choose and otherwise -->
  ${grade }
  <c:choose>
    <c:when test="${grade == 'A' }">
      <h2>你很优秀</h2>
    </c:when>
    <c:when test="${grade =='B' }">
       <h2>不错哟</h2>
    </c:when>
    <c:when test="${grade =='C' }">
      <h2>水平一般,需要提高</h2>
    </c:when>
    <c:when test="${grade =='D' }">
      <h2>需要努力啦,不要气馁</h2>
    </c:when>
    
    <c:otherwise>
       <h2>一切随缘吧</h2>
    </c:otherwise>

  </c:choose>
  
  <!-- forEach标签用于遍历集合
     List companies=(List)request.getAttribute("companies")
     for(Company c:companies){
     out.print("...");
     }
   -->
  <c:forEach items="${requestScope.companies}" var="c"> 
     <h2>${c.name }-${c.url}</h2>
  </c:forEach>
  
</body>
</html>


写回答

1回答

好帮手慕小班

2020-05-26

同学你好,检查测试同学的代码,根据报错信息:

http://img.mukewang.com/climg/5ecc95fc09390f0507830584.jpg

在49行中,在com.imooc.jstl.Company中namw属性没有找到,检查Company中是cname属性,而不是name

http://img.mukewang.com/climg/5ecc96530901e18b04750187.jpg

如上所示,同学将name修改为cname,再来试试

http://img.mukewang.com/climg/5ecc96e309e9a3e906280082.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

0 学习 · 9666 问题

查看课程