tomcat报错:java.net.ConnectException:Connection refused
Posted 验算纸个人博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat报错:java.net.ConnectException:Connection refused相关的知识,希望对你有一定的参考价值。
昨天在启动tomcat时发现tomcat能正常建立数据库连接,但是启动到一半时,也就是数据连接池初始化完毕,将要建立http协议连接时死了,所以无法启动成功;此时关闭tomcat就报java.net.ConnectException: Connection refused 错误,但是使用plussql developer连接数据库正常,就是tomcat不能正常启动。重启tomcat不行,重启电脑不行,最后只能重启数据库了,重启后一切正常。
问题起因:tomcat非正常关闭
问题分析:1.和数据库建立连接正常,没问题,说明不是程序的问题,同时连接数据库的端口1521也是正常的
2.tomcat是在启动以下信息之前死的
org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
也就是说问题出在了这个http协议的启动上。有可能是8080端口的问题。
3.重启电脑后还是报错,说明不是我本机上的8080端口的问题,更不会是8009端口的问题。
在网上搜索看到annicybc的一篇文章:http://blog.csdn.net/annicybc/archive/2008/10/30/3187057.aspx其文如下:
昨天,由于多人同时使用的服务器当掉了,等我们去服务器启动Tomcat服务的时候发现老是报错,大致内容是java.net.ConnectException: Connection refused,很是郁闷,因为我们根本还没有启动Tomcat服务。所以我们就开始shutdown服务。结果还是报出。通过nmap命令查看发现8080端口已经被http-proxy占用,但是不知这个是什么服务占用了,于是采用了ps -aux查看所有的运行服务日志,里面有个oracle服务和还有apache和oracle的监听,通过分析排查发现apache不会占用8080,oracle服务本身也不会使用这个端口,只有web服务才有可能,于是我们尝试关闭oracle的监听之后发现nmap中的8080端口也就空闲了。然后启动Tomcat服务非常顺利。
看了后,感觉还是端口8080在作怪,而且应该是tocmcat在要占用该端口时发现该端口已经被占用,而且应该是被数据库的占用了的缘故,不然就不会在重数据库后就正常了。
出自:验算纸博客
如若转载请注明出处!
以上是关于tomcat报错:java.net.ConnectException:Connection refused的主要内容,如果未能解决你的问题,请参考以下文章