
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
" />
认真做教育 专心促就业
昆明达内的老师给大家讲JSTL标签出错:<c:forEach var="book" items="${requestScope.books}" varStatus="status">
昆明达内的老师发现同学在JSTL标签代码的时候出错,总结一下:
问题1.The JSP specification requires that an attribute name is preceded by whitespace
解决:<c:forEach var="book" items="${requestScope.books}"varStatus="status">出错
改为:<c:forEach var="book" items="${requestScope.books}" varStatus="status">
原因:varStatus="status"前加空格
------------------------------------------------------------------
问题2.Property 'isbn' ot found on type java.lang.String
解决:<c:forEach var="book" items=" ${requestScope.books}" varStatus="status">出错
改为:<c:forEach var="book" items="${requestScope.books}" varStatus="status">
原因:${requestScope.books}前去掉空格
------------------------------------------------------------------
问题3.程序能运行了,jsp能访问,但是EL表达式读取不到想要的信息
解决:没有在.xml配置文件添加servlet的<url-pattern>信息,无法调用servlet向jsp传对象。
在.xml文件中添加:
<servlet>
<servlet-name>BooksServlet</servlet-name>
<servlet-class>com.controller.BooksServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>BooksServlet</servlet-name>
<url-pattern>/BooksServlet</url-pattern>
</servlet-mapping>
------------------------------------------------------------------
jstl标签练习代码:
1.BooksServlet.java
1 package com.controller;
2 import java.io.IOException;
3 import javax.servlet.RequestDispatcher;
4 import javax.servlet.ServletException;
5 import javax.servlet.annotation.WebServlet;
6 import javax.servlet.http.HttpServlet;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9 import java.util.List;
10 import java.util.ArrayList;
11 import com.model.Book;
12 //@WebServlet("/BooksServlet")
13 public class BooksServlet extends HttpServlet {
14 @Override
15 public void doGet(HttpServletRequest request, HttpServletResponse response)
16 throws ServletException, IOException {
17 List<Book> books = new ArrayList<Book>();
18 Book book1 = new Book("978-7-302-23059-5","Java语言程序设计",45.00);
19 Book book2 = new Book("978-7-302-21540-0","Java Web编程技术",39.00);
20 Book book3 = new Book("978-7-302-24130-0","C #入门经典",99.80);
21 books.add(book1);
22 books.add(book2);
23 books.add(book3);
24 request.setAttribute("books", books);
25 RequestDispatcher rd = request.getRequestDispatcher("/books.jsp");
26 rd.forward(request, response);
27 }
28 }
2.Book.java(javaBean类)
1 package com.model;
2
3 public class Book {
4 private String isbn;
5 private String title;
6 private double price;
7 public Book(String isbn, String title, double price) {
8 super();
9 this.isbn = isbn;
10 this.title = title;
11 this.price = price;
12 }
13 public String getIsbn() {
14 return isbn;
15 }
16 public void setIsbn(String isbn) {
17 this.isbn = isbn;
18 }
19 public String getTitle() {
20 return title;
21 }
22 public void setTitle(String title) {
23 this.title = title;
24 }
25 public double getPrice() {
26 return price;
27 }
28 public void setPrice(double price) {
29 this.price = price;
30 }
31
32
33 }
3.books.jsp
1 package com.model;
2
3 public class Book {
4 private String isbn;
5 private String title;
6 private double price;
7 public Book(String isbn, String title, double price) {
8 super();
9 this.isbn = isbn;
10 this.title = title;
11 this.price = price;
12 }
13 public String getIsbn() {
14 return isbn;
15 }
16 public void setIsbn(String isbn) {
17 this.isbn = isbn;
18 }
19 public String getTitle() {
20 return title;
21 }
22 public void setTitle(String title) {
23 this.title = title;
24 }
25 public double getPrice() {
26 return price;
27 }
28 public void setPrice(double price) {
29 this.price = price;
30 }
31
32
33 }
4.配置文件.xm
1 <?xml version="1.0" encoding="UTF-8"?>
2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="#/xml/ns/javaee" xsi:schemaLocation="#/xml/ns/javaee #/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
3 <display-name>Ex_JSTL_tag</display-name>
4 <servlet>
5 <servlet-name>BooksServlet</servlet-name>
6 <servlet-class>com.controller.BooksServlet</servlet-class>
7 </servlet>
8 <servlet-mapping>
9 <servlet-name>BooksServlet</servlet-name>
10 <url-pattern>/BooksServlet</url-pattern>
11 </servlet-mapping>
12 <welcome-file-list>
13 <welcome-file>index.html</welcome-file>
14 <welcome-file>index.htm</welcome-file>
15 <welcome-file>books.jsp</welcome-file>
16 <welcome-file>default.htm</welcome-file>
17 <welcome-file>default.jsp</welcome-file>
18 </welcome-file-list>
19 </web-app>
5.运行时注意加入 http://localhost/Ex_JSTL_tag/BooksServlet
只有在url中加入/BooksServlet才能调用到servlet想jsp传参数
昆明达内的老师后面还会给同学们讲其他容易错误的地方。