You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xsp-dev@xml.apache.org by Saul Rodrigo Zarrate Cárdenas <s-...@uniandes.edu.co> on 2002/11/12 19:59:07 UTC

Help! Pooling connection with Cocoon And Oracle database!!!!!!

Hi everybody

I have a Cocoon Version number 2.0.3.  I am working with Apache Tomcat version 
4.0.1
I'm trying to connect my application to a database.  I have an Oracle Database 
and in the web.xml file I have 

 <init-param>
      <param-name>load-class</param-name>
      <param-value>
          oracle.jdbc.driver.OracleDriver 
      </param-value>
 </init-param>

For other side, in the cocoon.xconf file I have 

<datasources>
    <jdbc name="test_oracle_pool">
      <pool-controller min="5" max="10" oradb="true"/>
      <auto-commit>true</auto-commit>
      <dburl>jdbc:oracle:thin:@sue:1521:utilsol</dburl>
      <user>system</user>
      <password>manager</password>
    </jdbc>
</datasources>

Where sue is the machine where I have my database, the port is 1521 and the 
name of the database is utilsol.
I tested the url, user and pasword with a JDBC connection and I didn't have 
any problem

In the WEB-INF/lib directory of Cocoon I have the classes12.jar file.  It is 
the driver for Oracle JDBC access

I have a XSP page where I am trying to do the connection.  The code of that 
xsp is the next


<?xml version="1.0" encoding="ISO-8859-1"?> 
 
<xsp:page language="java"
   xmlns:xsp="http://apache.org/xsp"
   xmlns:esql="http://apache.org/cocoon/SQL/v2"
   xmlns:xsp-request="http://apache.org/xsp/request/2.0"
>  
   
<page> 

 <title>Db Connection Test</title>
   <content>
    <esql:connection> 
      <esql:dburl>jdbc:oracle:thin:@sue:1521:utilsol</esql:dburl>
      <esql:username>system</esql:username>
      <esql:password>manager</esql:password>
      <esql:driver>oracle.jdbc.driver.OracleDriver</esql:driver>

     <esql:execute-query> 
       <esql:query>
          select sysdate from dual
       </esql:query>
       <esql:results> 
         <esql:row-results> 
             <para><esql:get-string column="sysdate"/></para>
         </esql:row-results>
       </esql:results>
     </esql:execute-query>
    </esql:connection>
   </content>
  </page>
</xsp:page>


In my sitemap.xmap I have 

      <map:match pattern="*/*.xsp">
        <map:generate type="serverpages" src="logical/{1}/{2}.xsp"/>
        <map:serialize type="xml"/>
      </map:match>


When I load the XSP page, I have the next result

  <?xml version="1.0" encoding="UTF-8" ?> 
        <page xmlns:xsp="http://apache.org/xsp" 
xmlns:xspdoc="http://apache.org/cocoon/XSPDoc/v1" 
xmlns:esql="http://apache.org/cocoon/SQL/v2" 
            xmlns:xsp-request="http://apache.org/xsp/request/2.0">
            <title>Db Connection Test</title> 
                <content>
                    <para>2002-11-12 12:57:40.0</para> 
            </content>
    </page>

And thats the result I was expecting.  Even through, I need to use a pool, and 
I have this page

<?xml version="1.0" encoding="ISO-8859-1"?> 
 
<xsp:page language="java"
   xmlns:xsp="http://apache.org/xsp"
   xmlns:esql="http://apache.org/cocoon/SQL/v2"
   xmlns:xsp-request="http://apache.org/xsp/request/2.0"
>  
   
<page> 

 <title>Db Connection Test</title>
   <content>
    <esql:connection> 
     <esql:pool>test_oracle_pool</esql:pool>

     <esql:execute-query> 
       <esql:query>
          select sysdate from dual
       </esql:query>
       <esql:results> 
         <esql:row-results> 
             <para><esql:get-string column="sysdate"/></para>
         </esql:row-results>
       </esql:results>
     </esql:execute-query>
    </esql:connection>
   </content>
  </page>
</xsp:page>

How you can see, I remove the data for the connection In the first XSP file 
and I used the definition of the pool in the cocoon.xconf
But when I load it (both pages names is borradoDeOpciones.xsp), Cocoon show me 
this error


Cocoon 2 - Internal server error

-------------------------------------------------------------------------------
-

type fatal

message Exception in ServerPagesGenerator.generate()

description org.apache.cocoon.ProcessingException: Exception in 
ServerPagesGenerator.generate(): java.lang.RuntimeException: Could not get the 
datasource org.apache.avalon.excalibur.datasource.NoValidConnectionException: 
No valid JdbcConnection class available

sender org.apache.cocoon.servlet.CocoonServlet

source Cocoon servlet

stack-trace

org.apache.cocoon.ProcessingException: Exception in 
ServerPagesGenerator.generate(): java.lang.RuntimeException: Could not get the 
datasource org.apache.avalon.excalibur.datasource.NoValidConnectionException: 
No valid JdbcConnection class available
	at org.apache.cocoon.generation.ServerPagesGenerator.generate
(ServerPagesGenerator.java:270)
	at org.apache.cocoon.components.pipeline.CachingEventPipeline.process
(CachingEventPipeline.java:250)
	at org.apache.cocoon.components.pipeline.CachingStreamPipeline.process
(CachingStreamPipeline.java:399)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.matchN1007A
(C:\Archivos de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:884)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.process(C:\Archivos 
de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:459)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.process(C:\Archivos 
de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:376)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:224)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:179)
	at org.apache.cocoon.www.sitemap_xmap.matchN1036A(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:4053)
	at org.apache.cocoon.www.sitemap_xmap.process(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:3186)
	at org.apache.cocoon.www.sitemap_xmap.process(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:3124)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:224)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:179)
	at org.apache.cocoon.sitemap.SitemapManager.process
(SitemapManager.java:154)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:575)
	at org.apache.cocoon.servlet.CocoonServlet.service
(CocoonServlet.java:999)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:243)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:201)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.valves.CertificatesValve.invoke
(CertificatesValve.java:246)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2344)
	at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:164)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:170)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:170)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:462)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:163)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.connector.http.HttpProcessor.process
(HttpProcessor.java:1011)
	at org.apache.catalina.connector.http.HttpProcessor.run
(HttpProcessor.java:1106)
	at java.lang.Thread.run(Thread.java:536)
Caused by: java.lang.RuntimeException: Could not get the datasource 
org.apache.avalon.excalibur.datasource.NoValidConnectionException: No valid 
JdbcConnection class available
	at 
org.apache.cocoon.www.SGCWebXML.logical.moduloDeSeguridad.borradoDeOpciones_xsp
.generate(C:\Archivos de programa\Apache Tomcat 4.0
\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML/logical/moduloDeSeguridad\borradoDeOpcion
es_xsp.java:354)
	at org.apache.cocoon.generation.ServerPagesGenerator.generate
(ServerPagesGenerator.java:258)
	... 46 more
java.lang.RuntimeException: Could not get the datasource 
org.apache.avalon.excalibur.datasource.NoValidConnectionException: No valid 
JdbcConnection class available
	at 
org.apache.cocoon.www.SGCWebXML.logical.moduloDeSeguridad.borradoDeOpciones_xsp
.generate(C:\Archivos de programa\Apache Tomcat 4.0
\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML/logical/moduloDeSeguridad\borradoDeOpcion
es_xsp.java:354)
	at org.apache.cocoon.generation.ServerPagesGenerator.generate
(ServerPagesGenerator.java:258)
	at org.apache.cocoon.components.pipeline.CachingEventPipeline.process
(CachingEventPipeline.java:250)
	at org.apache.cocoon.components.pipeline.CachingStreamPipeline.process
(CachingStreamPipeline.java:399)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.matchN1007A
(C:\Archivos de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:884)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.process(C:\Archivos 
de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:459)
	at org.apache.cocoon.www.SGCWebXML.sitemap_xmap.process(C:\Archivos 
de programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www/SGCWebXML\sitemap_xmap.java:376)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:224)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:179)
	at org.apache.cocoon.www.sitemap_xmap.matchN1036A(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:4053)
	at org.apache.cocoon.www.sitemap_xmap.process(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:3186)
	at org.apache.cocoon.www.sitemap_xmap.process(C:\Archivos de 
programa\Apache Tomcat 4.0\work\localhost\cocoon\cocoon-
files\org/apache/cocoon/www\sitemap_xmap.java:3124)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:224)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:179)
	at org.apache.cocoon.sitemap.SitemapManager.process
(SitemapManager.java:154)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:575)
	at org.apache.cocoon.servlet.CocoonServlet.service
(CocoonServlet.java:999)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:243)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:201)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.valves.CertificatesValve.invoke
(CertificatesValve.java:246)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2344)
	at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:164)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:170)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:170)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:462)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:163)
	at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
	at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
	at org.apache.catalina.connector.http.HttpProcessor.process
(HttpProcessor.java:1011)
	at org.apache.catalina.connector.http.HttpProcessor.run
(HttpProcessor.java:1106)
	at java.lang.Thread.run(Thread.java:536)


request-uri

/cocoon/SGCWebXML/moduloDeSeguridad/borradoDeOpciones.xsp

path-info

SGCWebXML/moduloDeSeguridad/borradoDeOpciones.xsp


PLEASE, ANYBODY HELP ME!!!!!

Thank you


Saul Zarrate Cardenas