jsp空指针错误指向con.createStatement()报错
exceptionorg.apache.jasper.JasperExceptionorg.apache.jasper.servlet.JspServletWrapper...
exceptionorg.apache.jasper.JasperExceptionorg.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause
java.lang.NullPointerException
org.xjstc.yyfy.controls.Bean_YYZY.getYYZY_YtoM(Bean_YYZY.java:651)
org.apache.jsp.Admin.Translate_jsp._jspService(Translate_jsp.java:68)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
其中org.xjstc.yyfy.controls.Bean_YYZY.getYYZY_YtoM(Bean_YYZY.java:651)代码如下:
public String getYYZY_YtoM(String YuanYY,String YuanText,String MuBiaoYY) throws Exception
{
this.con = DataBaseConnection.getConnection();
Statement stmt = con.createStatement(); //651行
//ResultSet rst = stmt.executeQuery("select "+MuBiaoYY+" as exp from YYZY_INFO where "+YuanYY+"= N'"+YuanText+"'");
String result = YuanYY+MuBiaoYY+YuanText;
//System.out.print(YuanYY+MuBiaoYY+YuanText);
/*while(rst.next())
{
result = rst.getString("exp");
}
con.close();*/
return result;
}
现在找到的问题是
java.io.FileNotFoundException: conf\DBConfig.xml (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at org.xjstc.yyfy.conf.DBConfigManager.GetDBConfigByDbType(DBConfigManager.java:127)
at org.xjstc.yyfy.dbo.DataBaseConnection.getPram(DataBaseConnection.java:42)
at org.xjstc.yyfy.dbo.DataBaseConnection.getConnection(DataBaseConnection.java:26)
可是,
我写个.java调用方法就没问题,用jsp调用方法,就出现这个问题,这是为什么?
问题解决了有加分!
问题已解决:把相对路径改成了绝对路径。
可是根本原因还是没有搞懂啊,求大神回答,分依然不会少。 展开
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause
java.lang.NullPointerException
org.xjstc.yyfy.controls.Bean_YYZY.getYYZY_YtoM(Bean_YYZY.java:651)
org.apache.jsp.Admin.Translate_jsp._jspService(Translate_jsp.java:68)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
其中org.xjstc.yyfy.controls.Bean_YYZY.getYYZY_YtoM(Bean_YYZY.java:651)代码如下:
public String getYYZY_YtoM(String YuanYY,String YuanText,String MuBiaoYY) throws Exception
{
this.con = DataBaseConnection.getConnection();
Statement stmt = con.createStatement(); //651行
//ResultSet rst = stmt.executeQuery("select "+MuBiaoYY+" as exp from YYZY_INFO where "+YuanYY+"= N'"+YuanText+"'");
String result = YuanYY+MuBiaoYY+YuanText;
//System.out.print(YuanYY+MuBiaoYY+YuanText);
/*while(rst.next())
{
result = rst.getString("exp");
}
con.close();*/
return result;
}
现在找到的问题是
java.io.FileNotFoundException: conf\DBConfig.xml (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at org.xjstc.yyfy.conf.DBConfigManager.GetDBConfigByDbType(DBConfigManager.java:127)
at org.xjstc.yyfy.dbo.DataBaseConnection.getPram(DataBaseConnection.java:42)
at org.xjstc.yyfy.dbo.DataBaseConnection.getConnection(DataBaseConnection.java:26)
可是,
我写个.java调用方法就没问题,用jsp调用方法,就出现这个问题,这是为什么?
问题解决了有加分!
问题已解决:把相对路径改成了绝对路径。
可是根本原因还是没有搞懂啊,求大神回答,分依然不会少。 展开
2个回答
展开全部
很显示这句this.con = DataBaseConnection.getConnection();
DataBaseConnection.getConnection() 并没有get到Connection
检查你的 DataBaseConnection 及数据库配置
DataBaseConnection.getConnection() 并没有get到Connection
检查你的 DataBaseConnection 及数据库配置
追问
补充问题如上,大神给力!
追答
相对路径不对, 就说明你的这个 "相对" 不对
在你的类里面 应该这样的一句话
File configFile = new File("conf\DBConfig.xml");
然后打印出来看看就知道了
System.out.println(configFile.getAbsolutePath());
然后再进行相应的改进措施
怎么通过sevlet容器得到你部署的项目的根目录, 然后再添加相应的包路径, 就可以了,这样项目代码无论拷到哪里, 都会自动获得正确路径从而找到config.xml
java程序看这里 : http://blog.csdn.net/pjh163_2010/article/details/7392589
tomcat的 web程序看这里: http://zhidao.baidu.com/question/300205032.html
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个代码规模,至少需要100分以上~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询