tomcat控制台错误大汇总--1---Io 异常: The Network Adapter could not establish the connection

来源:互联网 发布:识字软件哪个好 编辑:程序博客网 时间:2024/06/14 10:24

Io 异常: The Network Adapter could not establish the connection
这个异常的出现一般是数据库和你的电脑的设置有关

这种异常的出现大致有下面几种原因:


1。IP错误。
在设置URL时错误,例如:jdbc:oracle:thin:@192.168.0.36:1521:sharp
数据库服务器不正确:ping 服务器IP是否正确。不正确,将URL更改为正确

(我曾经就一直连接一个我以为能连接的远程服务器,没想到服务器偷偷被关了,ping不通,泪奔了。。。)
端口号错误:一般不会错误。默认1521,没有冲突一般没事
进行一下操作:在DOS上键入sqlplus,检查oracle是否开启
一切正常,执行第2步。

2。防火墙
如果机器上安装有放火墙,可能是服务器端口号屏蔽而造成的。关闭防火墙后,尝试重新连接。
如果还是不行,执行第3步。

3。数据库监听未启动 修改PC上注册表中的ImagePath值。
这里以ORACLE数据库为例
重新手动启动数据库监听:
1:开始 → 运行→ 输入CMD→  进入DOS命令提示界面

C:\>LSNRCTL

查看当前监听状态:
LSNRCTL> status
或者
LSNRCTL> start
如果是类似图片中的信息

恭喜,你的问题已经查找出来,是数据库监听器没未启动而造成的。
以下是手动启动数据库的方法:
在运行处执行regedit进入注册表到
开始 →运行→ regedit
按下面路径
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome***TNSListener
找到OracleOraHome***TNSListener

注释:(***)是你的oracle版本,比如9i的就是90

找到之后你会发现ImagePath关键值不存在了,创建它:(存在的话,点击修改,修改方法在下文有介绍)
右键单击,弹出菜单选择新键(N)→字符串值(S)


将其命名为ImagePath
选中ImagePath点右键,选中修改:

在值中输入你的Oracle安装目录\ora90(其他本对应的是oraxxx目录)\bin\tnslsnr

如果是ORACLE 10G则安装目录为F:\oracle\product\10.1.0\Db_2\BIN\tnslsnr

确定后退出注册表:
再在DOS命令下键入start
如果出现下面画面,恭喜你,监听器启动成功:

关闭DOS,启动你的程序进行测试,应该恢复正常了。
以上就是3中常见的引发The Network Adapter could not establish the connection 异常的原因

 

参考出处:(http://www.diybl.com/course/3_program/java/javashl/20071126/87790.html)

异常如下:

org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io 异常: The Network Adapter could not establish the connection)
  at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)
  at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
Caused by: java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
  at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
  at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
  at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)

主要原因:

1.可能是server.xml文件的DataSource配置出错。

(1).如果用到的是本机上的数据,本地数据源里的部分配置为: username="pcisv62" password="11" url="jdbc:oracle:thin:@localhost:1521:orcl"
(2).如果用到的是服务器上的数据,则数据源里的部分配置为: username="pcisv62" password="11" url="jdbc:oracle:thin:@dbserver:1521:corev6"

(dbserver为服务器的名字,corev6为服务器上Oracle的SID)

2.可能是oracle的tnsnames.ora文件配置出错。

oracle的安装目录E:\oracle\ora92\network\admin下的tnsnames.ora:
本地配置:
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 主机名)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )
或服务器配置:
COREV6_DBSERVER =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = COREV6)
      (SERVER = DEDICATED)
    )
  )

 The Network Adapter could not establish the connection 最让我崩溃的地方:

昨天下午下班的时候还好好的,今天来上班,启动tomcat的时候就报错,找了一下原因,是公司服务器关闭了,就连接到经理的服务器上,问题来了,死活连不上!检查tomcat的url,ip,监听,重启,修改登录名,能想到的都想到了,还是不行。一气之下,删除监听,删除oracle NET配置里的服务,全部重新建立,然后连接成功。。。

tomcat启动成功,我无语了。。。。。

原创粉丝点击