Fixed at last! And of course it's and annoying fix. I've been using these
Informix JDBC 2.0 drivers for some months without problem. As a last resort
I downloaded the very latest version from the IBM site and... The rest is
now history :)

Many thanks to ALL your help. Very much appreciated. 

>-----Original Message-----
>From: D'Alessandro, Arthur [mailto:[EMAIL PROTECTED] 
>Sent: 17 March 2004 19:37
>To: [EMAIL PROTECTED]; Tomcat Users List; Parsons Technical Services
>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>
>
> For future, recommend snipping any real host/username/passwords for
>security reasons.
>
>I am not familiar with Informix, however, given a logged in session by
>the user you specify, are you able to execute the query, and 
>return 1 or
>more records?
>
>I recommend creating  dummy table just for validation with 1 record, 1
>field to minimize the overhead.  A validation query is performed before
>each connection object is handed out.
>
>-----Original Message-----
>From: Paul Mahoney [mailto:[EMAIL PROTECTED] 
>Sent: Wednesday, March 17, 2004 2:19 PM
>To: D'Alessandro, Arthur; 'Tomcat Users List'; 'Parsons Technical
>Services'
>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>
>To get this far I had to more the datasource resource defiition to the
>context. I've rasie the debug to 9 but could see no additional loging
>that
>would help. Here is the context ...
>
><Context className="org.apache.catalina.core.StandardContext"
>cachingAllowed="true"
>charsetMapperClass="org.apache.catalina.util.CharsetMapper"
>cookies="true"
>crossContext="false" debug="9" displayName="Custom Fares"
>docBase="C:/Documents and Settings/pmahoney/My Documents/Travel
>2/code/webapps/CustomFares/web"
>mapperClass="org.apache.catalina.core.StandardContextMapper"
>path="/CustomFares" privileged="false" reloadable="false"
>swallowOutput="false" useNaming="true"
>wrapperClass="org.apache.catalina.core.StandardWrapper">
>          <Resource name="jdbc/OscarsDB" scope="Shareable"
>type="javax.sql.DataSource"/>
>          <ResourceParams name="jdbc/OscarsDB">
>            <parameter>
>              <name>validationQuery</name>
>              <value>select count(*) from systables</value>
>            </parameter>
>            <parameter>
>              <name>url</name>
> 
><value>jdbc:informix-sqli://oscar1.travel2.com:1420/oscars:INFO
>RMIXSERVE
>R=os
>cars_dbsrv</value>
>            </parameter>
>            <parameter>
>              <name>password</name>
>              <value>1atan1a</value>
>            </parameter>
>            <parameter>
>              <name>maxActive</name>
>              <value>4</value>
>            </parameter>
>            <parameter>
>              <name>maxWait</name>
>              <value>5000</value>
>            </parameter>
>            <parameter>
>              <name>driverClassName</name>
>              <value>com.informix.jdbc.IfxDriver</value>
>            </parameter>
>            <parameter>
>              <name>username</name>
>              <value>sy5t3m</value>
>            </parameter>
>            <parameter>
>              <name>maxIdle</name>
>              <value>2</value>
>            </parameter>
>          </ResourceParams>
>        </Context>
>
>The stacktrace is...
>
>org.apache.commons.dbcp.SQLNestedException: Cannot get a connection,
>pool
>exhausted, cause:
>java.util.NoSuchElementException: Could not create a validated object
>        at
>org.apache.commons.pool.impl.GenericObjectPool.borrowObject(Gen
>ericObjec
>tPoo
>l.java:851)
>        at
>org.apache.commons.dbcp.PoolingDataSource.getConnection(Pooling
>DataSourc
>e.ja
>va:140)
>        at
>org.apache.commons.dbcp.BasicDataSource.getConnection(BasicData
>Source.ja
>va:5
>18)
>        at
>com.travel2.customFares.Query.getJdbcConnection(Query.java:95)
>        at com.travel2.customFares.Query.execute(Query.java:160)
>        at
>com.travel2.customFares.CustomFaresService.GetFares(CustomFares
>Service.j
>ava:
>58)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccesso
>rImpl.jav
>a:39
>)
>        at
>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMetho
>dAccessor
>Impl
>.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:324)
>        at
>org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProv
>ider.java
>:402
>)
>        at
>org.apache.axis.providers.java.RPCProvider.processMessage(RPCPr
>ovider.ja
>va:3
>09)
>        at
>org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider
>.java:333
>)
>        at
>org.apache.axis.strategies.InvocationStrategy.visit(InvocationS
>trategy.j
>ava:
>71)
>        at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
>        at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
>        at
>org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
>        at 
>org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
>        at
>org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:854)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>        at
>org.apache.axis.transport.http.AxisServletBase.service(AxisServ
>letBase.j
>ava:
>339)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>        at
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilte
>r(Applica
>tion
>FilterChain.java:247)
>        at
>org.apache.catalina.core.ApplicationFilterChain.doFilter(Applic
>ationFilt
>erCh
>ain.java:193)
>        at
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWr
>apperValv
>e.ja
>va:256)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:643)
>        at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeli
>ne.java:4
>80)
>        at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>        at
>org.apache.catalina.core.StandardContextValve.invoke(StandardCo
>ntextValv
>e.ja
>va:191)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:643)
>        at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeli
>ne.java:4
>80)
>        at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>        at
>org.apache.catalina.core.StandardContext.invoke(StandardContext
>.java:242
>2)
>        at
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostV
>alve.java
>:180
>)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:643)
>        at
>org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDis
>patcherVa
>lve.
>java:171)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:641)
>        at
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportV
>alve.java
>:163
>)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:641)
>        at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeli
>ne.java:4
>80)
>        at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>        at
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEng
>ineValve.
>java
>:174)
>        at
>org.apache.catalina.core.StandardPipeline$StandardPipelineValve
>Context.i
>nvok
>eNext(StandardPipeline.java:643)
>        at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeli
>ne.java:4
>80)
>        at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>        at
>org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
>        at
>org.apache.coyote.http11.Http11Processor.process(Http11Processo
>r.java:82
>8)
>        at
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler
>.processC
>onne
>ction(Http11Protocol.java:700)
>        at
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoin
>t.java:58
>4)
>        at
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(T
>hreadPool
>.jav
>a:683)
>        at java.lang.Thread.run(Thread.java:536)
>
>>-----Original Message-----
>>From: D'Alessandro, Arthur [mailto:[EMAIL PROTECTED] 
>>Sent: 17 March 2004 18:07
>>To: [EMAIL PROTECTED]; Tomcat Users List; Parsons Technical Services
>>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>>
>>
>>Would you include any resource definitions and/or any
>resource>links/references.
>>
>>Also, the full stacktrace of the exception may shed some other
>potential
>problems.
>>
>>-----Original Message-----
>>From: Paul Mahoney [mailto:[EMAIL PROTECTED] 
>>Sent: Wednesday, March 17, 2004 1:05 PM
>>To: D'Alessandro, Arthur; 'Tomcat Users List'; 'Parsons Technical
>>Services'
>>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>>
>>I agree, but it looks good and I've tried without one being specified.
>>In
>>addition, I've never see a connection raised at the database 
>>server end.
>>This makes me think the DataSource is just not working and I'm not
>>seeing
>>the proper error. But I can find nothing more in the logs :(
>>
>>>-----Original Message-----
>>>From: D'Alessandro, Arthur [mailto:[EMAIL PROTECTED] 
>>>Sent: 17 March 2004 18:00
>>>To: Tomcat Users List; [EMAIL PROTECTED]; Parsons Technical Services
>>>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>>>
>>>
>>>Check your validation query in your resource definition. 
>>>
>>>-----Original Message-----
>>>From: Paul Mahoney [mailto:[EMAIL PROTECTED] 
>>>Sent: Wednesday, March 17, 2004 12:57 PM
>>>To: 'Parsons Technical Services'; 'Tomcat Users List'
>>>Subject: RE: Problem using JNDI/DBCP to get DataSouce
>>>
>>>Tried
>>>  dataSource = (DataSource)
>>>initContext.lookup("java:comp/jdbc/OscarsDB");
>>>But it return null, so tried
>>>  dataSource = (DataSource)
>>>initContext.lookup("java:comp/env/jdbc/OscarsDB");
>>>And a datasource instance was return so before, looking good...
>>>However, still got the same exception when trying to get a connection
>>>instance
>>>  "Cannot get a connection, pool exhausted"
>>>with a nested exception
>>>  "Could not create a validated object"
>>>
>>
>>
>>
>>
>
>
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to