Java网站从Windows迁移到centos报错java.lang.NullPointerException

rogx114 发布于 2017/01/17 21:47
阅读 648
收藏 2

我公司有一个web的系统,java部署的,在Windows Server 2008 R2服务器上使用正常,但因为Windows Server不稳定,经常宕机,所以想使用CentOS 6 部署。换过去以后,登录页能打开,输入账号登录后就报错如下:

HTTP Status 500 - java.lang.NullPointerException

message   java.lang.NullPointerException

exception

javax.servlet.ServletException: java.lang.NullPointerException
	org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
	org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
	all.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:62)

root cause

java.lang.NullPointerException
	java.lang.Class.forName0(Native Method)
	java.lang.Class.forName(Class.java:171)
	all.Usedb.<init>(Usedb.java:27)
	all.Kfpro.dengluchuli(Kfpro.java:127)
	com.yourcompany.struts.action.LoginAction.execute(LoginAction.java:69)
	org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
	all.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:62)

使用的是jdk1.6.0_45,tomcat6,都是默认设置,同样版本的java和tomcat也是默认设置在Windows Server上就没这个问题。环境啥的应该没问题,tomcat默认页面都能打开。也不懂Java,只会部署,请问这个是什么问题。

加载中
0
风筝上的少年
风筝上的少年
com.yourcompany.struts.action.LoginAction.execute(LoginAction.java:69)
0
如比如比
如比如比
数据库连接有问题,确认驱动,设置等是否正常。
0
夜苍狼
夜苍狼
信息太少,你看你原来的Tomcat里面lib下面有没有跟数据库有关的jar包,拷过去试试
0
夜苍狼
夜苍狼
还有虽然Java是跨平台的,但是你要确认一下开发人员写代码的时候有没有考虑跨平台,大部分水平不高的程序员写代码的时候都不注意,如果写代码时候没考虑,那你换过去肯定不能正常运行
0
符锡文
符锡文
all.Usedb.<init>(Usedb.java:27)
all.Kfpro.dengluchuli(Kfpro.java:127)

这两个是你代码报错的位置,运行在这报的空指针,你可以往前去找

0
程序猿_哲
程序猿_哲
如果你不懂代码那就去找配置上的问题吧,看看web.xml里是不是配置了一些小东西迁移的时候没有注意到,或者之前的数据库链接是否能连接上,缓存的配置,或者看下tomcat启动的时候有没有错误日志,新服务器的防火墙配置,当然最好还是找开发人员帮你定位问题
0
K不是你的帝
K不是你的帝
目测数据库链接不对,比如用户名,密码,端口,ip,甚至数据库名称都仔细检查一下,从报错来看,这个和跨平台问题不大。
0
你美你说的对
你美你说的对
Class.forName
异常,检查下你的数据库驱动jar有没有拷贝过去
0
皮蛋儿
皮蛋儿

检查数据库驱动包是否存在

0
就是个精虫上脑的地方
就是个精虫上脑的地方
驱动问题 检查下吧
返回顶部
顶部