Tomcat启动时出现java.sql.SQLException

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat启动时出现java.sql.SQLException相关的知识,希望对你有一定的参考价值。

奇怪了!!为什么我启动Tomcat的时候会出现

而我类中运行一些对数据库的操作却没出现这个异常

我的Tomcat是5.5的 Myeclipse5.5 + sql server2000

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'sa' 登录失败。
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSLoginRequest.processReplyToken(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:68)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:87)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1.acquireResource(C3P0PooledConnectionPool.java:83)
at com.mchange.v2.resourcepool.BasicResourcePool.assimilateResource(BasicResourcePool.java:884)
at com.mchange.v2.resourcepool.BasicResourcePool.acquireUntil(BasicResourcePool.java:601)
at com.mchange.v2.resourcepool.BasicResourcePool.access$400(BasicResourcePool.java:31)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1079)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:354)
如果不是Web应用程序直接在类中写连jdbc的代码能正常运行

如果不是Web应用程序直接在类中写连jdbc的代码能正常运行
如果那样的话是可以正常运行的。。

估计你是不是配置数据库连接池了。。或者你用到speing或者别的什么连接池了。所以在启动的时候。tomcat去访问数据库出现连接异常导致这个异常出现
参考技术A 1.sqlserver 2000 要装sp3或者sp4补丁
2.打开防火墙的TCP 1433,和UDP 1434端口
3.检查sa用户名密码是否正确。
参考技术B 1.删除这行语句: Connection con=DriverManager.getConnection
("jdbc:jtds:sqlserver://127.0.0.1:1433;databasename=你的数据库名;","sa","sa");的最后一个sa.那是你sa用户的登录密码.

2.检查防火墙是否屏蔽了1433端口

3.检查你sa用户的密码,然后填入最后一个sa那里

4.重装sql,并打上sp4补丁
参考技术C 用系统的能不能登陆.

Eclipse启动tomcat时出现报错

Publishing the configuration...
Error copying file to D:\tools\tomcat\apache-tomcat-5.5.26\conf
\server.xml: D:\tools\tomcat\apache-tomcat-5.5.26\conf\server.xml (拒绝访问。)
D:\tools\tomcat\apache-tomcat-5.5.26\conf\server.xml (拒绝访问。)
Error copying file to D:\tools\tomcat\apache-tomcat-5.5.26\conf\tomcat-users.xml: D:\tools\tomcat\apache-tomcat-5.5.26\conf\tomcat-users.xml (拒绝访问。)
D:\tools\tomcat\apache-tomcat-5.5.26\conf\tomcat-users.xml (拒绝访问。)
Error copying file to D:\tools\tomcat\apache-tomcat-5.5.26\conf\web.xml: D:\tools\tomcat\apache-tomcat-5.5.26\conf\web.xml (拒绝访问。)
D:\tools\tomcat\apache-tomcat-5.5.26\conf\web.xml (拒绝访问。)

eclipse中Tomcat启动失败主要原因有:
1.独立运行的Tomcat没有关闭。 2.Tomcat之前运行过,或者Tomcat非正常关闭,进程当中的Tomcat依然存在。
3.Tomcat使用的端口被其他软件所占(Tomcat默认的端口:8080)。
针对这些错误的解决方案:
1.在系统服务当中将Tomcat的启动方式由“自动”改为“手动”(默认的情况Tomcat是自动启动的服务,随开机启动)。
2.关闭独立运行的Tomcat,要保证Eclipse启动Tomcat之前,Tomcat服务是停用的。
3.查看任务管理器,进程里有没有Tomcat,如果有,将其关掉。
4.如果在Eclipse当中启动Tomcat还是不成功,则可能是Tomcat的端口被占了。
a.找到Tomcat路径:..\Tomcat 5.0.28\conf\下的server.xml文件,检索到端口号:8080,将其改成未被占用的端口号如8088等。
b.可以在dos下用命令:netstat -a 查看一下端口的使用情况,看看Tomcat的端口有没有被其他的软件所占用
参考技术A eclipse中Tomcat启动失败主要原因有:
1.独立运行的Tomcat没有关闭,之前我有单独开启或tomcat--在电脑右下角那里可以看到有对应的tomcat图标,退出即可
2.Tomcat之前运行过,或者Tomcat非正常关闭,进程当中的Tomcat依然存在--杀掉该进程
3.Tomcat使用的端口被其他软件所占(Tomcat默认的端口:8080--cmd使用netstat -a 查看一下端口的使用情况,看看Tomcat的端口有没有被其他的软件所占用,也可以修改tomcat的默认端口,Tomcat路径:..\Tomcat 5.0.28\conf\下的server.xml文件,检索到端口号:8080,将其改成未被占用的端口号如8088等

碰到的第二种情况:
在eclipse中启动tomcat时,在console中输出的日志信息为红色,以为是报错,吓死宝宝了,结果在网上查找了下,说其实程序并没有错误。

而且此时我通过在eclipse中启用tomcat,可以正常打开http://localhost:8080/网页,在eclipse中关闭tomcat,则http://localhost:8080/网页提示找不到,所以证明已经能够成功通过eclipse来操作tomcat服务器。
原因是:tomcat默认的日志输出按jdk中的System.err来输出,而System.err在eclipse中,以红色显示。
解决办法:
Eclipse 中 System.err 的显示颜色可以通过 Window --> Preference --> Run/Debug --> Console 的 Standard Error text color 进行更改。
参考技术B 建议你重新配置一下tomcat 参考技术C 建议你看一下自己的用户权限本回答被提问者采纳 参考技术D 用户权限的问题

以上是关于Tomcat启动时出现java.sql.SQLException的主要内容,如果未能解决你的问题,请参考以下文章

在Eclipse中启动tomcat后访问tomcat首页时出现404

Eclipse启动tomcat时出现报错

启动 Tomcat 时出现 Whitelabel 错误页面

从 Eclipse 启动 Tomcat 时出现“SetPropertiesRule”警告消息 [重复]

启动tomcat时出现乱码——淇℃伅(转)

tomcat启动后访问rest接口时出现类加载不了的异常?