exception
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NullPointerException
org.apache.jsp.jsp.contractxianshi_jsp._jspService(org.apache.jsp.jsp.contractxianshi_jsp:60)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.sql.*" errorPage="" %>
<html>
<head>
<title>合同分配
</title>
<jsp:useBean id="dbBeans" scope="page" class="com.packBean.Dbconn"/>
<%
Connection con =dbBeans.getConnection();
java.sql.Statement stmt=con.createStatement();
String sql="";
int num =0;
String namequantity ="txtquantity";
String nameproduct="txtproduct";
int contractid=0;
String contractname=new String(request.getParameter("Contractname").getBytes("ISO-8859-1"));
String contractno=new String(request.getParameter("Contractno").getBytes("ISO-8859-1"));
String signtime=new String(request.getParameter("signtime").getBytes("ISO-8859-1"));
sql="select c.fcontractid as contractid,c.fclass as class,g.fname as "+
" gname,u.frealname as uname ,m.fname as mname,c.expiretime as etime,c.forecastsigntime as ftime from "+
"(select fcontractid,fclass,fuserid,fcustomerid,fgroupid,"+
"convert(varchar(10),fexpiretime,120) as expiretime,convert(varchar(10),fforecastsigntime,120) as forecastsigntime from t_contracts "+
"where convert(varchar(10),fforecastsigntime,120)='" + signtime +
"' and fname='" + contractname
+"' and fcontractno='"+ contractno+"') as c,t_groups g,t_users u,t_customers m where u.fuserid=c.fuserid and g.fgroupid=c.fgroupid"+
" and m.fcustomerid=c.fcustomerid;";
ResultSet rs=dbBeans.getResultSet(sql,stmt);
%>
</head>
<body>
<TABLE width=600 height=100 bordercolor="#000000" border=0 cellpadding=1 cellspacing=1 bgcolor="#005fba">
<%
if (rs.first()==false)
{
out.print("<script language=\"javascript\"> alert(\"输入的合同名称或者合同编号有误!\");</script>");
response.sendRedirect("contractchaxun.jsp");
}
else
{
while(rs.next())
{
contractid=rs.getInt("contractid");
%>
<tr bgcolor=#ffffff align="left">
<TD ><font size="4"><span class="font0">合同ID号</span></font></TD>
<TD width="191" align="center"><INPUT TYPE="text" NAME="txtContractID" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("contractid")%>></TD>
</tr>
<TR bgcolor=#ffffff align="left">
<TD ><font size="4"><span class="font0">合同名称</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtContractName" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("contractname")%>></TD>
<TD ><font size="4"><span class="font0">合同编号</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<input TYPE="text" NAME="txtContractNo" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("contractno")%>></TD>
</TR>
<TR bgcolor=#ffffff align="left">
<TD ><font size="4"><span class="font0">合同类别</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtType" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("class")%>></TD>
<TD><font size="4"><span class="font0">经销商</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<input TYPE="text" NAME="txtCustomer" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("mname")%>></TD>
</TR>
<TR bgcolor=#ffffff align="left">
<TD><font size="4"><span class="font0">所属销售代表</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtPerson" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("uname")%>></TD>
<TD ><font size="4"><span class="font0">负责区域</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtDistrict" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getString("gname")%>></TD>
</TR>
<TR bgcolor=#ffffff align="left">
<TD><font size="4"><span class="font0">合同开始时间</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtBeginTime" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getTime("ftime")%>></TD>
<TD><font size="4"><span class="font0">签约时间</span></font></TD>
<TD width="191" bgcolor=#ffffff align="center">
<INPUT TYPE="text" NAME="txtSignTime" size="25" style="border:1px double rgb(187,185,185);font:9pt" disabled value=<%=rs.getTime("etime")%>></TD>
</TR>
<%
}
}
rs.close();
stmt.close();
con.close();
%>
</TABLE>
<HR>
<FONT SIZE="4" COLOR="#000080"><B>子合同分配 </B></font>
<form method="POST" action="saveall.jsp">
<TABLE border=0 cellPadding=5 cellSpacing=1 bgColor="#005fba">
<TR vAlign=middle bgColor=#ffffff align="left">
<TD>产品名称</TD>
<TD>一月</TD>
<TD>二月</TD>
<TD>三月</TD>
<TD>四月</TD>
<TD>五月</TD>
<TD>六月</TD>
<TD>七月</TD>
<TD>八月</TD>
<TD>九月</TD>
<TD>十月</TD>
<TD>十一月</TD>
<TD>十二月</TD>
<td>年度合同总额</td>
</TR>
<%
int i=0;
sql="select discinc t.fname as name,c.fquantity as quantity from t_products t,(select fproductid,fquantity from t_contracts_details where fcontractid=" + contractid + ")as c where t.fproductid=c.fproductid;";
num=1;
con =dbBeans.getConnection();
stmt=con.createStatement();
rs = dbBeans.getResultSet(sql,stmt);
if (rs.first()==false)
{
out.print("<script language=\"javascript\"> alert(\"输入的合同名称或者合同编号有误!\");</script>");
response.sendRedirect("contractchaxun.jsp");
}
else
{
while(rs.next())
{
nameproduct=nameproduct+num;
%>
<TR vAlign=middle bgColor=#ffffff align="left">
<TD width="191" bgColor=#ffffff align="left">
<%out.println("<INPUT TYPE=\" text\" size=\"8\" NAME=\"" +nameproduct+"\" value=\""+rs.getString("name")+"\" style=\"border:1px double rgb(187,185,185);font:9pt\">");%>
</TD>
<%
for(int k=1;k<=12;k++)
{
namequantity=namequantity+(12*(num-1)+k);
%>
<TD width="191" bgColor=#ffffff align="center">
<%out.println("<INPUT TYPE=\" text\" size=\"8\" NAME=\"" +namequantity+"\" style=\"border:1px double rgb(187,185,185);font:9pt\">");%>
</TD>
<%
}
%>
<TD width="191" bgColor=#ffffff align="left">
<INPUT TYPE="text" size="8" value="<%=rs.getFloat("quantity")%>" style="border:1px double rgb(187,185,185);font:9pt">
</TD>
</TR>
<%
num=num+1;
}
}
rs.close();
stmt.close();
con.close();
%>
<tr vAlign=middle bgColor=#ffffff align="center">
<td colspan="14">
<INPUT TYPE="submit" value="确定" style="border:1 solid #BBB9B9;background:#ffffff" class="button">
<INPUT type="reset" value="取消" style="border:1 solid #BBB9B9;background:#ffffff" class="button">
</td>
<tr>
</TABLE>
</form>
</body>
</html>
这个页面得到查询页面的合同号等信息,查询数据库得到记录集,(合同为年度合同)然后要想分配到12月的子合同(包括产品的名称,其中数量通过在input中输入),提交执行向数据库插入!!
8 个解决方案
#1
up
#2
上面是甚东西。。。
#3
太夸张了,在JSP里写了这么多java……,既然你用了dbBean,为什么不把查询操作也封装进取?
我估计你这个问题可能是数据库联接没有得到。
我估计你这个问题可能是数据库联接没有得到。
#4
楼主大人
您的jsp运行前
数据库的连接问题自己测试过没?
一点点来吧
建议用javabean
这样的代码量实在很夸张
您的jsp运行前
数据库的连接问题自己测试过没?
一点点来吧
建议用javabean
这样的代码量实在很夸张
#5
检查数据库的连接是否成功
#6
看完都要半天,帮你顶
看懂可能需要一个星期吧。
看懂可能需要一个星期吧。
#7
建议先把你的sql语句封装成方法写进javabean里面
#8
多半是java.sql.Statement stmt=con.createStatement()
这句中的con是null,然后造成的错误
如果是这样,数据库联接的问题
这句中的con是null,然后造成的错误
如果是这样,数据库联接的问题
#1
up
#2
上面是甚东西。。。
#3
太夸张了,在JSP里写了这么多java……,既然你用了dbBean,为什么不把查询操作也封装进取?
我估计你这个问题可能是数据库联接没有得到。
我估计你这个问题可能是数据库联接没有得到。
#4
楼主大人
您的jsp运行前
数据库的连接问题自己测试过没?
一点点来吧
建议用javabean
这样的代码量实在很夸张
您的jsp运行前
数据库的连接问题自己测试过没?
一点点来吧
建议用javabean
这样的代码量实在很夸张
#5
检查数据库的连接是否成功
#6
看完都要半天,帮你顶
看懂可能需要一个星期吧。
看懂可能需要一个星期吧。
#7
建议先把你的sql语句封装成方法写进javabean里面
#8
多半是java.sql.Statement stmt=con.createStatement()
这句中的con是null,然后造成的错误
如果是这样,数据库联接的问题
这句中的con是null,然后造成的错误
如果是这样,数据库联接的问题