关于tomcat发布的问题

lonelygames 2008-10-22 11:50:02
开发环境:eclipse
运行环境:都是本机
问题:
在eclipse环境下,数据联接是正常的.
把项目打包为war放到webapps后,重启tomcat 项目发布是成功的.
启动tomcat 可正常浏览jsp页面.
但需要联接数据库查询时,却报错.(在eclipse环境下调试是正常的).我想可能是发布后tomcat配置的问题!但本人初次发布项目,
不知如何解决.
如登录模块,错误信息如下,请各位前辈提点.
[ERROR]: Servlet.service() for servlet login threw exception
java.lang.NullPointerException
at edu.cqu.filemanager.dao.UserDAOImpl.select(UserDAOImpl.java:77)
at edu.cqu.filemanager.service.FileManagerService.getUser(FileManagerService.java:92)
at edu.cqu.filemanager.servlet.UserLogin.doPost(UserLogin.java:27)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at edu.cqu.common.EncodingFilter.doFilter(EncodingFilter.java:27)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:835)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:640)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286)
at java.lang.Thread.run(Unknown Source)
...全文
101 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
JavaAlpha 2009-09-23
  • 打赏
  • 举报
回复
参考 看看
耶律火柴 2008-10-22
  • 打赏
  • 举报
回复
两个地方最好都放,
lonelygames 2008-10-22
  • 打赏
  • 举报
回复
谢谢4楼
把驱动放到项目的lib下就行了.
放到tomcat下的lib还不行.
lonelygames 2008-10-22
  • 打赏
  • 举报
回复
77行是:rs.close();

public List select(String sql) throws FileManagerException {

List l = new ArrayList();
try {
conn = pool.getConnection();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
User user = new User();
user.setUserID(rs.getString("UserID"));
user.setUserName(rs.getString("UserName"));
user.setDeptName(rs.getString("deptName"));
user.setPasswd(rs.getString("Passwd"));
user.setUserRight(rs.getString("Right"));
user.setDeptType(rs.getString("deptType"));
user.setLoginTime(rs.getString("LoginTime"));
user.setRegDate(rs.getDate("RegDate"));
l.add(user);
}
} catch (SQLException e1) {

e1.printStackTrace();
throw new FileManagerException(e1);
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
} finally {
try {
rs.close();
pstmt.close();
conn.close();
} catch (SQLException e1) {

e1.printStackTrace();
}

}
return l;
}
lonelygames 2008-10-22
  • 打赏
  • 举报
回复
可能是数据驱动的问题,我使用的是odbc,tomcat应该带有吧?
耶律火柴 2008-10-22
  • 打赏
  • 举报
回复
UserDAOImpl.java:77

查看一下UserDAOImpl.java第77行是什么情况,

如果数据库驱动的问题,把驱动放到tomcat对应的lib下
lonelygames 2008-10-22
  • 打赏
  • 举报
回复
谢谢!
程序肯定没问题的.在esclipe环境下是正常的.
不打包直接放上去,是和打包放上去是一样的.
xqh2168 2008-10-22
  • 打赏
  • 举报
回复
[ERROR]: Servlet.service() for servlet login threw exception
java.lang.NullPointerException
at edu.cqu.filemanager.dao.UserDAOImpl.select(UserDAOImpl.java:77)
at edu.cqu.filemanager.service.FileManagerService.getUser(FileManagerService.java:92)
at edu.cqu.filemanager.servlet.UserLogin.doPost(UserLogin.java:27)

你的程序有问题
phoenixYiYou 2008-10-22
  • 打赏
  • 举报
回复
你不打war包的时候发布连接数据库正确吗?

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧