Posted by:owlrose
Posted on:2004-07-23 08:49
在作java web开发,
使用了Structs 框架,
web服务器在用Resin,数据库是oracle
网络情况,有不同的子网:
resin安装在192.168.78.22
oracle安装在192.168.79.22
连接数据库方面,用了Structs 的datasource。
在开发过程中发现,启动了resin后,如果resin隔一段时间(半个钟左右)没有收到操作数据库的请求,再访问resin(web)操作数据库时,structs连接池中仍然显示有可用的连接,但是到真正使用的时候就会发生下面的异常:
java.sql.SQLException: Io 异常: Connection reset
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333)
at oracle.jdbc.driver.OracleStatement.(OracleStatement.java:389)
at oracle.jdbc.driver.OracleStatement.(OracleStatement.java:413)
at oracle.jdbc.driver.OraclePreparedStatement.(OraclePreparedStatement.java:119)
at oracle.jdbc.driver.OraclePreparedStatement.(OraclePreparedStatement.java:92)
at oracle.jdbc.driver.OracleConnection.privatePrepareStatement(OracleConnection.java:950)
at oracle.jdbc.driver.OracleConnection.prepareStatement(OracleConnection.java:802)
at org.apache.struts.legacy.GenericConnection.prepareStatement(GenericConnection.java:510)
..........................
我搜索了一下,应该不少人出现过类似的情况,但没有发现一个比较确定的原因分析和解决办法,有说不能解决的。
我觉得web程序应该没有什么问题,
可能是oracle的什么设置问题或者是网络配置之类的问题,但由于不熟悉这些方面的东西,也想不到什么解决办法。
大家有没有什么看法?请多多赐教啊