下面的代码是老是发生NullPointerException错误,可是我查了半天没看出来,哪位能帮我看看啊
<%@ page contentType="text/html; charset=GBK" %>
<%@ page language="java" import="java.util.*" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="dao.ConnectToDB" %>
<%!
java.sql.Statement stmt;
Connection conn;
ResultSet rst;
%>
<%
String hid = request.getParameter("dosubmit");
ConnectToDB db = new ConnectToDB();
conn = db.conn;
if(hid != null) {
util.ToChinese tc = new util.ToChinese();
String dID = request.getParameter("deptDraftID");
String cID = request.getParameter("comPlanDraftID");
String taskName = request.getParameter("taskName");
String taskContent = request.getParameter("taskContent");
if(taskContent == null){
taskContent = "";
}
String deptID = request.getParameter("deptID");
String startDate = request.getParameter("startDate");
String completeDate = request.getParameter("completeDate");
String support = (session.getAttribute("data").toString());
String c = "";
if(support != null){
String a = support.substring(1,(support.length()-1));
String[] b = a.split(",");
for(int i = 0; i < b.length; i++){
if(!(b[i].trim()).endsWith("=")){
c = c + b[i].trim()+",";
}
}
}
if(support == null){
support = "";
}
String sql = "update PSS_deptDraftPlan set comPlanDraftID = '"+cID+"',taskName = '"+tc.changeCH(taskName)+"',taskContent = '"+tc.changeCH(taskContent)+"',deptID = '"+deptID+"',startDate = '"+startDate+"',completeDate = '"+completeDate+"',support = '"+c+"' where deptDraftID = '"+dID+"'";
try{
stmt = conn.createStatement();
stmt.executeUpdate(sql);
if(stmt != null){
stmt.close();}
if(conn != null){
conn.close();}
if(session.getAttribute("data") != null){
session.removeAttribute("data");
}
if(session.getAttribute("id") != null){
session.removeAttribute("id");
}
response.sendRedirect("./DeptDeptPlanDraft.jsp");
}catch(Exception e){
e.printStackTrace();
}}else {%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<LINK rel="stylesheet" href="css\bbs.css" type="text/css">
<html>
<script type="text/javascript" src="js\calendar.js"></script>
<script language="javascript">
var CalendarWebControl = new atCalendarControl();
</script>
<script>
function dopost(){
if(document.form1.taskName.value==""){
alert("任务名称不能为空!");
}else{
form1.submit()
}
}
</script>
<body>
<center>
<FONT face="隶书" color="blue" size="5">部门计划草案详细信息</FONT><br>
<hr size="2" color="green" width="100%"><br>
</center>
<%
String ID = request.getParameter("id");
try{
stmt = conn.createStatement();
rst = stmt.executeQuery("select * from PSS_deptDraftPlan where deptDraftID = '"+ ID +"'");
if(rst.next()){ %>
<center>
<form action="DeptDeptDraftEdit.jsp" method="post" name="form1">
<table align="center" border="1" class="a3" width="100%">
<%
try{
Statement stmt2 = conn.createStatement();
ResultSet rst2 = stmt2.executeQuery("select * from pss_complandraft where isPass = '1' and complandraftid in (select complanID from Pss_Complan where isDone = '2' and isDelete = '2') and isDelete = '2'");
%>
<tr>
<td>部门草案ID</td>
<td><input type="text" value="<%=rst.getString("deptDraftID")%>" readonly="readonly" name="deptDraftID"></td>
</tr>
<tr>
<td>公司计划草案名称</td>
<td><select name="comPlanDraftID">
<%while(rst2.next()){ %>
<option value="<%=rst2.getString("comPlanDraftID")%>"><%=rst2.getString("taskName")%></option>
<%}%>
</select></td>
</tr>
<tr>
<td>任务名称</td>
<td><input type="text" value="<%=rst.getString("taskName")%>" name="taskName"></td>
</tr>
<tr>
<td>部门ID</td>
<td><input type="text" value="<%=rst.getString("deptID")%>" name="deptID" readonly></td>
</tr>
<tr>
<td>任务开始时间</td>
<td><input type="text" value="<%
if(rst.getString("startDate")==null){
out.println("");
}else{
out.println(rst.getString("startDate"));
}%>" name="startDate" readonly onClick="CalendarWebControl.show(this,this.value)"></td>
</tr>
<tr>
<td>要求完成时间</td>
<td><input type="text" value="<%
if(rst.getString("completeDate")==null){
out.println("");
}else{
out.println(rst.getString("completeDate"));
}%>" name="completeDate" readonly onClick="CalendarWebControl.show(this,this.value)"></td>
</tr>
<tr>
<td>工作内容</td>
<td>
<textarea cols="80" rows="8" name="taskContent">
<%if(rst.getString("taskContent")==null){
out.print("");
}else{
out.print(rst.getString("taskContent"));
}%>
</textarea>
</td>
</tr>
<tr>
<td>请求支援</td><td><input type="button" value="请求支援" onclick="location.href('./DeptEditSupport.jsp?id=<%=ID%>')"></td></tr> <%
if(rst2 != null){
rst2.close();}
if(stmt2 != null){
stmt2.close();}
}catch(Exception e){
e.printStackTrace();
}%>
</table>
<input type="button" value="提 交" onclick="dopost()">
<input type="button" value="返回上一页" onclick="history.back()">
<input type="hidden" name="dosubmit" value="true">
</form>
</center>
<% }else{
out.println("找不到对应的记录!");
}
if(rst != null){
rst.close();}
if(stmt != null){
stmt.close();}
if(conn != null){
conn.close();}
} catch(SQLException e){
e.printStackTrace();
}
%>
</body>
</html>
<%}%>
<%@ page contentType="text/html; charset=GBK" %>
<%@ page language="java" import="java.util.*" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="dao.ConnectToDB" %>
<%!
java.sql.Statement stmt;
Connection conn;
ResultSet rst;
%>
<%
String hid = request.getParameter("dosubmit");
ConnectToDB db = new ConnectToDB();
conn = db.conn;
if(hid != null) {
util.ToChinese tc = new util.ToChinese();
String dID = request.getParameter("deptDraftID");
String cID = request.getParameter("comPlanDraftID");
String taskName = request.getParameter("taskName");
String taskContent = request.getParameter("taskContent");
if(taskContent == null){
taskContent = "";
}
String deptID = request.getParameter("deptID");
String startDate = request.getParameter("startDate");
String completeDate = request.getParameter("completeDate");
String support = (session.getAttribute("data").toString());
String c = "";
if(support != null){
String a = support.substring(1,(support.length()-1));
String[] b = a.split(",");
for(int i = 0; i < b.length; i++){
if(!(b[i].trim()).endsWith("=")){
c = c + b[i].trim()+",";
}
}
}
if(support == null){
support = "";
}
String sql = "update PSS_deptDraftPlan set comPlanDraftID = '"+cID+"',taskName = '"+tc.changeCH(taskName)+"',taskContent = '"+tc.changeCH(taskContent)+"',deptID = '"+deptID+"',startDate = '"+startDate+"',completeDate = '"+completeDate+"',support = '"+c+"' where deptDraftID = '"+dID+"'";
try{
stmt = conn.createStatement();
stmt.executeUpdate(sql);
if(stmt != null){
stmt.close();}
if(conn != null){
conn.close();}
if(session.getAttribute("data") != null){
session.removeAttribute("data");
}
if(session.getAttribute("id") != null){
session.removeAttribute("id");
}
response.sendRedirect("./DeptDeptPlanDraft.jsp");
}catch(Exception e){
e.printStackTrace();
}}else {%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<LINK rel="stylesheet" href="css\bbs.css" type="text/css">
<html>
<script type="text/javascript" src="js\calendar.js"></script>
<script language="javascript">
var CalendarWebControl = new atCalendarControl();
</script>
<script>
function dopost(){
if(document.form1.taskName.value==""){
alert("任务名称不能为空!");
}else{
form1.submit()
}
}
</script>
<body>
<center>
<FONT face="隶书" color="blue" size="5">部门计划草案详细信息</FONT><br>
<hr size="2" color="green" width="100%"><br>
</center>
<%
String ID = request.getParameter("id");
try{
stmt = conn.createStatement();
rst = stmt.executeQuery("select * from PSS_deptDraftPlan where deptDraftID = '"+ ID +"'");
if(rst.next()){ %>
<center>
<form action="DeptDeptDraftEdit.jsp" method="post" name="form1">
<table align="center" border="1" class="a3" width="100%">
<%
try{
Statement stmt2 = conn.createStatement();
ResultSet rst2 = stmt2.executeQuery("select * from pss_complandraft where isPass = '1' and complandraftid in (select complanID from Pss_Complan where isDone = '2' and isDelete = '2') and isDelete = '2'");
%>
<tr>
<td>部门草案ID</td>
<td><input type="text" value="<%=rst.getString("deptDraftID")%>" readonly="readonly" name="deptDraftID"></td>
</tr>
<tr>
<td>公司计划草案名称</td>
<td><select name="comPlanDraftID">
<%while(rst2.next()){ %>
<option value="<%=rst2.getString("comPlanDraftID")%>"><%=rst2.getString("taskName")%></option>
<%}%>
</select></td>
</tr>
<tr>
<td>任务名称</td>
<td><input type="text" value="<%=rst.getString("taskName")%>" name="taskName"></td>
</tr>
<tr>
<td>部门ID</td>
<td><input type="text" value="<%=rst.getString("deptID")%>" name="deptID" readonly></td>
</tr>
<tr>
<td>任务开始时间</td>
<td><input type="text" value="<%
if(rst.getString("startDate")==null){
out.println("");
}else{
out.println(rst.getString("startDate"));
}%>" name="startDate" readonly onClick="CalendarWebControl.show(this,this.value)"></td>
</tr>
<tr>
<td>要求完成时间</td>
<td><input type="text" value="<%
if(rst.getString("completeDate")==null){
out.println("");
}else{
out.println(rst.getString("completeDate"));
}%>" name="completeDate" readonly onClick="CalendarWebControl.show(this,this.value)"></td>
</tr>
<tr>
<td>工作内容</td>
<td>
<textarea cols="80" rows="8" name="taskContent">
<%if(rst.getString("taskContent")==null){
out.print("");
}else{
out.print(rst.getString("taskContent"));
}%>
</textarea>
</td>
</tr>
<tr>
<td>请求支援</td><td><input type="button" value="请求支援" onclick="location.href('./DeptEditSupport.jsp?id=<%=ID%>')"></td></tr> <%
if(rst2 != null){
rst2.close();}
if(stmt2 != null){
stmt2.close();}
}catch(Exception e){
e.printStackTrace();
}%>
</table>
<input type="button" value="提 交" onclick="dopost()">
<input type="button" value="返回上一页" onclick="history.back()">
<input type="hidden" name="dosubmit" value="true">
</form>
</center>
<% }else{
out.println("找不到对应的记录!");
}
if(rst != null){
rst.close();}
if(stmt != null){
stmt.close();}
if(conn != null){
conn.close();}
} catch(SQLException e){
e.printStackTrace();
}
%>
</body>
</html>
<%}%>
解决方案 »
- <struts2>参数传递
- flash与web链接
- MyEclipse问题
- 这样的一个系统是b/s还是c/s模式?
- javabean中调用存储过程发生了问题,各位达人帮忙看看错误。
- servlet中使用getRequestDispatcher(),出现奇怪错误,高手指点。(急等)
- 我用jsp调用db2数据库的时候出现如下问题,请各位大虾给与指教,在线等候,多谢!
- JMAIL发邮件的问题/
- 导出Excel问题
- CXF WebService框架,发布服务,targetNamespace问题
- 那有org.apache.tools.zip下载呀,下载完后需要把这个ZIP包放到什么地方?
- 拜求:如何在JSP中获取客户端硬盘的序列号
有些地方容易引起这个异常的,你稍微修改试试看,比如
session.getAttribute("data").toString();//万一session.getAttribute("data")为null就处错了
Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.lang.NullPointerException
org.apache.jsp.pss.DeptDeptDraftEdit_jsp._jspService(DeptDeptDraftEdit_jsp.java:78)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
DeptDeptDraftEdit.jsp被编译成 DeptDeptDraftEdit_jsp.java 文件在你的tomcat安装目录下的work文件夹下面,具体那个子文件夹以你的web工程而定,
自己找一找,然后找到78
行就ok