11
回答
servlet传送list信息为什么在jsp页面中不能显示?可是在其他电脑上可以正常显示。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> 
<%@ taglib uri=" http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
  <head> 
    <title>My JSP 'showByPage.jsp' starting page</title> 
  </head> 
  <body> 
   <h1>分页显示用户信息页面</h1> 
    <form action="" method="post"> 
     <table border="1"> 
      <tr> 
      <th>编号</th><th>姓名</th><th>年龄</th><th>电话</th><th>地址</th><th>操作</th> 
      </tr> 
      <c:forEach items="${list}" var="list"> 
       <tr> 
        <td>${list.id }</td> 
        <td>${list.name }</td> 
        <td>${list.age }</td> 
        <td>${list.tel }</td> 
        <td>${list.address }</td> 
        <td> 
         <a href="QueryUserByIdServlet?id=${list.id }">修改</a> 
         <a href="DeleteUserServlet?id=${list.id }">删除</a> 
        </td> 
       </tr> 
      </c:forEach> 
     </table> 
     <c:if test="${page ==1}">首页</c:if> 
     <c:if test="${page > 1}"><a href="ShowByPageServlet?page=1">首页</a></c:if> 
     <c:if test="${page ==1}">上一页</c:if> 
     <c:if test="${page > 1}"><a href="ShowByPageServlet?page=${page-1 }">上一页</a></c:if> 
     <c:if test="${page == maxpage}">下一页</c:if> 
     <c:if test="${page < maxpage}"><a href="ShowByPageServlet?page=${page+1 }">下一页</a></c:if> 
     <c:if test="${page == maxpage}">末页</c:if> 
     <c:if test="${page < maxpage}"><a href="ShowByPageServlet?page=${maxpage }">末页</a></c:if> 
    </form> 
  </body> 
</html>

这是jsp代码,应当是没问题的ShowByPageServlet中的代码应当也没问题因为在其他的电脑上可以正常显示。我怀疑是配置问题,可是我在web.xml中也配置好了,嗨,就是不知道问题出在哪了?请大家帮忙指教!
举报
hebeijpp
发帖于7年前 11回/4K+阅
共有11个答案 最后回答: 6年前
public class ShowByPageServlet extends HttpServlet {


 public void destroy() {
  super.destroy(); // Just puts "destroy" string in log
 }
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  this.doPost(request, response);//调用doPost方法
  out.flush();
  out.close();
 }

 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  String page1 = request.getParameter("page");//获得页面传递过来的page值赋值给page1
  int page =1;
  if(page1 != null){
   page = Integer.parseInt(page1);//如果页面传递过来的page值存在,则把该page1赋值给page变量
  }
  ShowByPage byPage = new ShowByPage();
  List<UserVo> list = byPage.showByPage(page);
  int maxpage = byPage.maxpage();
  request.setAttribute("list", list);
  request.setAttribute("page", page);
  request.setAttribute("maxpage", maxpage);
  System.out.println(maxpage);
  request.getRequestDispatcher("showByPage.jsp").forward(request, response);
  out.flush();
  out.close();
 }
 public void init() throws ServletException {
  
 }

}

这是servlet代码,您看有问题吗?

--- 共有 2 条评论 ---
hebeijpp@红薯 : list有值,试过了。 7年前 回复
红薯只要 list 有值,这个servlet没什么问题 7年前 回复

检查一下你的web.xml。

是否web.xml文件使用的是servlet 2.3版本的声明的问题。

el表达式在servlet 2.3中默认是不启用的。

希望能帮上忙,顺便楼主给标记下最佳答案。哇咔咔!

---2.3---

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
  PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
  'http://java.sun.com/dtd/web-app_2_3.dtd'>


---2.4---

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">


---2.5---

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">



--- 共有 2 条评论 ---
蛮大人@hebeijpp : 把你的web.xml贴一份出来吧。 看看你怎么确认版本是2.5的。 7年前 回复
hebeijpp更正:我的版本是2.5的,应当不是这的问题。 7年前 回复

我的web.xml文件使用的servlet的版本没有声明。不用声明吧,在其他电脑上移植过来的,而且在其他电脑上可以正常运行。

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <filter>
  <filter-name>filter</filter-name>
  <filter-class>com.cn.filter.Zh_Filter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>filter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 
  <servlet>
    <servlet-name>AddUsersServlet</servlet-name>
    <servlet-class>com.cn.add.AddUsersServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ShowAllUsersServlet</servlet-name>
    <servlet-class>com.cn.query.ShowAllUsersServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>UpdateUserServlet</servlet-name>
    <servlet-class>com.cn.update.UpdateUserServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>QueryUserByIdServlet</servlet-name>
    <servlet-class>com.cn.query.QueryUserByIdServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>DeleteUserServlet</servlet-name>
    <servlet-class>com.cn.delete.DeleteUserServlet</servlet-class>
  </servlet>
  <servlet>
    <servlet-name>ShowByPageServlet</servlet-name>
    <servlet-class>com.cn.showbypage.ShowByPageServlet</servlet-class>
  </servlet>

 

 

  <servlet-mapping>
    <servlet-name>AddUsersServlet</servlet-name>
    <url-pattern>/AddUsersServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ShowAllUsersServlet</servlet-name>
    <url-pattern>/ShowAllUsersServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>UpdateUserServlet</servlet-name>
    <url-pattern>/UpdateUserServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>QueryUserByIdServlet</servlet-name>
    <url-pattern>/QueryUserByIdServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>DeleteUserServlet</servlet-name>
    <url-pattern>/DeleteUserServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ShowByPageServlet</servlet-name>
    <url-pattern>/ShowByPageServlet</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
这是web.xml的配置信息,请看。

<%@ taglib uri=" http://java.sun.com/jsp/jstl/core" prefix="c" %>

uri=" http://java.sun.com/jsp/jstl/core"不能有空格的,把空格去了,囧

LZ的空格没报错么?

 The absolute uri:  http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files

顶部