jsp注册新用户时,报错,哪位帮忙看一下???
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: java.lang.IllegalStateException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:532)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:420)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.lang.IllegalStateException
org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)
org.apache.jsp.WebContent.register_005fnew_005fuser_jsp._jspService(register_005fnew_005fuser_jsp.java:116)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.
子目录下面找到这个register_005fnew_005fuser_jsp.java看看第116行为何为null
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import java.sql.*;public final class register_005fnew_005fuser_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent { private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory(); private static java.util.List _jspx_dependants; private javax.el.ExpressionFactory _el_expressionfactory;
private org.apache.AnnotationProcessor _jsp_annotationprocessor; public Object getDependants() {
return _jspx_dependants;
} public void _jspInit() {
_el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
_jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());
} public void _jspDestroy() {
} public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException { PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this;
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;
try {
response.setContentType("text/html;charset=gbk");
pageContext = _jspxFactory.getPageContext(this, request, response,
null, true, 8192, true);
_jspx_page_context = pageContext;
application = pageContext.getServletContext();
config = pageContext.getServletConfig();
session = pageContext.getSession();
out = pageContext.getOut();
_jspx_out = out; out.write("\r\n");
out.write("\r\n"); //设置提交表单的中文编码
request.setCharacterEncoding("GBK"); //获取用户输入表单
String sUsername, sPassword, sRealname;
sUsername=request.getParameter("username");
sUsername=sUsername.replaceAll("'","''");
sPassword=request.getParameter("password");
sPassword=sPassword.replaceAll("'","''");
sRealname=request.getParameter("realname");
sRealname=sRealname.replaceAll("'","''");
//准备插入语句
String insertquery = "insert into player_info set username = '" + sUsername
+ "', password = '" + sPassword
+ "', realname = '" + sRealname + "'";
//检查用户是否存在语句
String selectquery = "select * from player_info where username = '" + sUsername +"'";
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
try
{
//获得数据库链接
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://localhost/ch02?user=jspdb&password=jspdb");
//创建statement
stmt = conn.createStatement();
rs = stmt.executeQuery(selectquery);
//查看是否已经有了用户
if (rs.next())
{
response.sendRedirect("register.htm");
return;
}
else
{
//创建新用户
stmt.executeUpdate(insertquery);
}
}catch(SQLException ex)
{
ex.printStackTrace();
response.sendRedirect("welcom.htm");
}
finally
{
//关闭数据库链接
if(stmt!=null)
stmt.close();
if(conn!=null)
conn.close(); }
//设置session属性
session.setAttribute("username", sUsername);
session.setAttribute("realname", sRealname);
//注册成功即意味着登录成功,迁移到游戏选择画面
response.sendRedirect("entry.jsp"); out.write('\r');
out.write('\n');
} catch (Throwable t) {
if (!(t instanceof SkipPageException)){
out = _jspx_out;
if (out != null && out.getBufferSize() != 0)
try { out.clearBuffer(); } catch (java.io.IOException e) {}
if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
}
} finally {
_jspxFactory.releasePageContext(_jspx_page_context);
}
}
response.sendRedirect("entry.jsp"); out.write('\r');
out.write('\n');
红色部分有问题吧,你都跳转页面了还输出,试一下,是不是这里有问题????