主题:jsp页面跳转问题,困扰我好几天了!~
CategoryServlet.java的代码:
package cn.com.zwb.blog;
import java.io.IOException;
//import java.sql.Connection;
//import java.sql.PreparedStatement;
import java.sql.SQLException; //import java.io.PrintWriter;
import java.util.List;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;
public class CategoryServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//解决从JSP页面接受中文参数乱码
request.setCharacterEncoding("UTF-8");
String method= request.getParameter("method");
if (method.equals("add")){
add(request, response);
}else if(method.equals("delete")){
delete(request, response);
}else if(method.equals("preEdit")){
preEdit(request, response);
}else if(method.equals("list")){
list(request, response);
}else if(method.equals("prePost")){
prePost(request, response);
}
System.out.println("method="+method);
// add(request, response);
}
public void list(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String sql="select id,name,level from category order by level desc,id desc ";
QueryRunner qr=DbHelper.getQueryRunner();
List list=null;
try {
list=(List)qr.query(sql,new BeanListHandler(Category.class));
request.setAttribute("list", list);
request.getRequestDispatcher("/adminCategoryList.jsp").forward(request,
response);
} catch (SQLException e) {
e.printStackTrace();
}
}
public void delete(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void preEdit (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void prePost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void add(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("name");
String level = request.getParameter("level");
String sql = "insert into category (name,level) values (?,?)";
//为SQL语句中的?设定参数
String params[] = {name, level };
QueryRunner qr= DbHelper.getQueryRunner();
int result=0;
String message = "";
try{
result=qr.update(sql,params);
}catch(SQLException e){
e.printStackTrace();
}
if (result == 1) {
message = "添加分类成功";
} else {
message = "添加分类失败";
}
System.out.println(name);
System.out.println(level);
request.setAttribute("message", message);
request.getRequestDispatcher("/result.jsp").forward(request,
response);
}
}
adminCategoryList.jsp代码
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="cn.com.zwb.blog.Category"%>
<%@ page import="java.util.List"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>admin category </title>
</head>
<%
List list = (List) request.getAttribute("list");
Category category = null;
%>
<body>
<script type="text/javascript">
function del(){
var msg="确定要删除吗?\n\n请确定!";
if(confirm(msg)==true){
return true;
}else{
return false;
}
}
</script>
<div align="center">
<p>
博客分类管理
</p>
<table width="612" height="140" border="1">
<tr>
<td width="62" height="46">
分类编号
</td>
<td width="452">
分类名称
</td>
<td width="76">
操作
</td>
</tr>
<%
for (int i = 0; i < list.size(); i++) {
category = (Category) list.get(i);
%>
<tr>
<td height="40"> <%=category.getId()%> </td>
<td> <%=category.getName()%> </td>
<td>
<a
href="/blog/servlet/CategoryServlet?method=edit&id= <%=category.getId()%>">修改 </a>|
<a
href="/blog/servlet/CategoryServlet?method=delete&id= <%=category.getId()%>">删除 </a>
</td>
</tr>
<%
}
%>
</table>
<p>
</p>
</div>
</body>
</html>
报错:
type Status report
message /blog/adminCategoryList.jsp
description The requested resource (/blog/adminCategoryList.jsp) is not available
这让我很费解啊 在测试list()方法时怎么就转不到adminCategoryList.jsp页面呢?测试add()正常 ,另外存放的路径都没有问题.
package cn.com.zwb.blog;
import java.io.IOException;
//import java.sql.Connection;
//import java.sql.PreparedStatement;
import java.sql.SQLException; //import java.io.PrintWriter;
import java.util.List;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;
public class CategoryServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//解决从JSP页面接受中文参数乱码
request.setCharacterEncoding("UTF-8");
String method= request.getParameter("method");
if (method.equals("add")){
add(request, response);
}else if(method.equals("delete")){
delete(request, response);
}else if(method.equals("preEdit")){
preEdit(request, response);
}else if(method.equals("list")){
list(request, response);
}else if(method.equals("prePost")){
prePost(request, response);
}
System.out.println("method="+method);
// add(request, response);
}
public void list(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String sql="select id,name,level from category order by level desc,id desc ";
QueryRunner qr=DbHelper.getQueryRunner();
List list=null;
try {
list=(List)qr.query(sql,new BeanListHandler(Category.class));
request.setAttribute("list", list);
request.getRequestDispatcher("/adminCategoryList.jsp").forward(request,
response);
} catch (SQLException e) {
e.printStackTrace();
}
}
public void delete(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void preEdit (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void prePost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void add(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("name");
String level = request.getParameter("level");
String sql = "insert into category (name,level) values (?,?)";
//为SQL语句中的?设定参数
String params[] = {name, level };
QueryRunner qr= DbHelper.getQueryRunner();
int result=0;
String message = "";
try{
result=qr.update(sql,params);
}catch(SQLException e){
e.printStackTrace();
}
if (result == 1) {
message = "添加分类成功";
} else {
message = "添加分类失败";
}
System.out.println(name);
System.out.println(level);
request.setAttribute("message", message);
request.getRequestDispatcher("/result.jsp").forward(request,
response);
}
}
adminCategoryList.jsp代码
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page import="cn.com.zwb.blog.Category"%>
<%@ page import="java.util.List"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>admin category </title>
</head>
<%
List list = (List) request.getAttribute("list");
Category category = null;
%>
<body>
<script type="text/javascript">
function del(){
var msg="确定要删除吗?\n\n请确定!";
if(confirm(msg)==true){
return true;
}else{
return false;
}
}
</script>
<div align="center">
<p>
博客分类管理
</p>
<table width="612" height="140" border="1">
<tr>
<td width="62" height="46">
分类编号
</td>
<td width="452">
分类名称
</td>
<td width="76">
操作
</td>
</tr>
<%
for (int i = 0; i < list.size(); i++) {
category = (Category) list.get(i);
%>
<tr>
<td height="40"> <%=category.getId()%> </td>
<td> <%=category.getName()%> </td>
<td>
<a
href="/blog/servlet/CategoryServlet?method=edit&id= <%=category.getId()%>">修改 </a>|
<a
href="/blog/servlet/CategoryServlet?method=delete&id= <%=category.getId()%>">删除 </a>
</td>
</tr>
<%
}
%>
</table>
<p>
</p>
</div>
</body>
</html>
报错:
type Status report
message /blog/adminCategoryList.jsp
description The requested resource (/blog/adminCategoryList.jsp) is not available
这让我很费解啊 在测试list()方法时怎么就转不到adminCategoryList.jsp页面呢?测试add()正常 ,另外存放的路径都没有问题.