proxool.xml 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<proxool-config>
<proxool>
<alias>fireworks</alias>
<driver-url>jdbc:oracle:thin:@******:orcl</driver-url>

<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<driver-properties>
<property name="***" value="***" />
<property name="***" value="***" />
</driver-properties>
<prototype-count>5</prototype-count>
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<simultaneous-build-throttle>20</simultaneous-build-throttle>
<maximum-connection-count>100</maximum-connection-count>
<minimum-connection-count>10</minimum-connection-count>
</proxool>
</proxool-config>web.xml配置文件
<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>ZhxxServlet</servlet-name>
    <servlet-class>com.tzh.servlet.ZhxxServlet</servlet-class>
  </servlet>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>SystemBus</servlet-name>
    <servlet-class>com.tzh.utils.SystemBus</servlet-class>
  <init-param>
     <description>数据源名称,要与proxool中一致</description>
<param-name>fwdatasource</param-name>
<param-value>fireworks</param-value>
</init-param>
  <load-on-startup>6</load-on-startup>
  </servlet>问题:
java.sql.SQLException: Io 异常: Connection reset
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
        at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:815)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1037)
        at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:839)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1132)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
        at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
        at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.logicalcobwebs.proxool.ProxyStatement.invoke(ProxyStatement.java:100)
        at org.logicalcobwebs.proxool.ProxyStatement.intercept(ProxyStatement.java:57)
        at oracle.jdbc.OracleStatement$$EnhancerByProxool$$5e2bc2c5.executeQuery(<generated>)
        at com.tzh.dao.ZhxxDao.getYjxx(ZhxxDao.java:134)
        at com.tzh.servlet.ZhxxServlet.doGet(ZhxxServlet.java:38)
        at com.tzh.servlet.ZhxxServlet.doPost(ZhxxServlet.java:112)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
        at java.lang.Thread.run(Thread.java:619)Oracle

解决方案 »

  1.   

    请提供以下信息:1)JDBC 连接的代码贴上来看看
    2)lsnrctl status
    3)数据库alert
      

  2.   

    1、先用PL DEV客户端试试能否连接
    2、检查配置文件的用户名、密码
    3、检查配置文件的配置方式
      

  3.   

    连接池已经清掉了过期连接,而客户端还以为有效
    加个这个配置试试<property name="validationQuery" value="select * from dual"/>