I've been playing around with some basic SQL queries and generally finding it easy enough to do... managed to get connections to MySQL and Postgres, both locally and on remote machines.
I've now tried connecting to MS SQL Server... ahem... and of course, I'm now having more problems. What I've done is taken the sql-page examples, and made a new datasource in the cocoon.xconf file that looks like this: <jdbc logger="core.datasources.test" name="test"> <pool-controller max="10" min="5"/> <dburl>jdbc:weblogic:mssqlserver4:dbname@host_address:1433</dburl> <user>xxxx</user> <password>yyyy</password> </jdbc> The dbname, host_address etc, are real in my file... just obscured for discussion... and they definitely work since they were pasted verbatim from a simple JDBC test harness written in Java, and compiled and run on the same machine. The Driver is definitely available to Cocoon, because I added it to classpath in catalina.sh, and I was getting ClassNotFoundException before... My web.xml file has this in it: <init-param> <param-name>load-class</param-name> <param-value> org.hsqldb.jdbcDriver org.postgresql.Driver weblogic.jdbc.mssqlserver4.Driver </param-value> </init-param> and sitemap.xml has this in it: <map:match pattern="mssql/*"> <map:generate src="vxml/{1}.xml"/> <map:transform type="sql"> <map:parameter name="use-connection" value="test"/> </map:transform> <map:transform src="vxml/xml-html.xsl"/> <map:serialize type="html"/> </map:match> and the url I access to get there is this: http://localhost:8080/cocoon/mssql/sql-page where sql-page.xml is: <?xml version="1.0"?> <page xmlns:sql="http://apache.org/cocoon/SQL/2.0"> <title>Postgres test</title> <content> <para>Querying stuff from my laptop with Postgres</para> <para>Currently going through HyperSQL</para> <execute-query xmlns="http://apache.org/cocoon/SQL/2.0"> <query> SELECT ServiceID FROM tblService </query> </execute-query> </content> </page> Once again, this query definitely works from my simple JDBC test harness, but not in cocoon... I found exactly 2 mentions of this problem before in the Cocoon archives (but for Postgres)... neither with an answer. I'm finding this pretty baffling... What could possibly be making this query fail? The Tomcat and Cocoon logs don't tell me anything that I can't already see from the Exception report. I can't seem to find where Cocoon puts the custom logger log files... any hints here? Anyone else had this problem? If so, I'd like to hear how you got around it. I'm betting it's something WAY simple that I'm missing, but just can't seem to make any difference... Exception report below: ----------------------------- org.apache.catalina.core.ApplicationF ilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.Applicat ionFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.Standard WrapperValve.invoke(StandardWrapperValve.java:243) ... etcetera... root cause java.lang.AbstractMethodError at org. apache.avalon.excalibur.datasource.Jd bcConnection.prepareStatement(JdbcConnection.java:172) at org.apache.cocoon.transformation. SQLTransformer$Query.execute(SQLTransformer.java:1014) at org.apache.cocoon.transformation. SQLTransformer.executeQuery(SQLTransformer.java:271) at org.apache.cocoon.transformation. SQLTransformer.endExecuteQueryElement(SQLTransformer.java:417) at org.apache.cocoon.transformation. SQLTransformer.endElement(SQLTransformer.java:702) at org.apache.cocoon.components.sax. XMLTeePipe.endElement(XMLTeePipe.java:124) at org.apache.xerces.parsers.Abstrac tSAXParser.endElement(AbstractSAXParser.java:568) at org.apache.xerces.impl.XMLNamespa ceBinder.handleEndElement(XMLNamespaceBinder.java:853) at org.apache.xerces.impl.XMLNamespa ceBinder.endElement(XMLNamespaceBinder.java:643) at org.apache.xerces.impl.dtd.XMLDTD Validator.handleEndElement(XMLDTDValidator.java:3006) at org.apache.xerces.impl.dtd.XMLDTD Validator.endElement(XMLDTDValidator.java:930) at org.apache.xerces.impl.XMLDocumen tFragmentScannerImpl.handleEndElement (XMLDocumentFragmentScannerImpl.java:1145) at org.apache.xerces.impl.XMLDocumen tFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:988) at org.apache.xerces.impl.XMLDocumen tFragmentScannerImpl$FragmentContentD ispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1446) at org.apache.xerces.impl.XMLDocumen tFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.Standar dParserConfiguration.parse(StandardParserConfiguration.java:525) at org.apache.xerces.parsers.Standar dParserConfiguration.parse(StandardParserConfiguration.java:581) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:147) at org.apache.xerces.parsers.Abstrac tSAXParser.parse(AbstractSAXParser.java:1157) at org.apache.avalon.excalibur.xml.JaxpParser.parse(JaxpParser.java:241) at org.apache.cocoon.components.sour ce.AbstractStreamSource.toSAX(AbstractStreamSource.java:206) at org.apache.cocoon.generation.File Generator.generate(FileGenerator.java:142) at org.apache.cocoon.components.pipe line.CachingEventPipeline.process(CachingEventPipeline.java:251) at org.apache.cocoon.components.pipe line.CachingStreamPipeline.process(CachingStreamPipeline.java:399) at org.apache.cocoon.www.sitemap_xmap.matchN1081A(/home/dayv/jakarta- tomcat-4.0.3/work/localhost/cocoon/cocoon-files/org/apache/cocoon/www/ sitemap_xmap.java:10245) at org.apache.cocoon.www.sitemap_xmap.process(/home/dayv/jakarta-tomcat- 4.0.3/work/localhost/cocoon/cocoon-files/org/apache/cocoon/www/ sitemap_xmap.java:3711) at org.apache.cocoon.www.sitemap_xmap.process(/home/dayv/jakarta-tomcat- 4.0.3/work/localhost/cocoon/cocoon-files/org/apache/cocoon/www/ sitemap_xmap.java:3097) at org.apache.cocoon.sitemap.Handler.process(Handler.java:222) 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:998) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.Applicat ionFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.Applicat ionFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.Standard WrapperValve.invoke(StandardWrapperValve.java:243) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.Standard Pipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.Standard ContextValve.invoke(StandardContextValve.java:190) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.Standard Pipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343) at org.apache.catalina.core.Standard HostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.valves.ErrorD ispatcherValve.invoke(ErrorDispatcherValve.java:170) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.valves.ErrorR eportValve.invoke(ErrorReportValve.java:170) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:564) at org.apache.catalina.core.Standard Pipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.Standard EngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.Standard Pipeline.invokeNext(StandardPipeline.java:566) at org.apache.catalina.core.Standard Pipeline.invoke(StandardPipeline.java:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.htt p.HttpProcessor.process(HttpProcessor.java:1012) at org.apache.catalina.connector.htt p.HttpProcessor.run(HttpProcessor.java:1107) at java.lang.Thread.run(Thread.java:479) ------------------------------------------------------------------------ ----------------------------------------------- David Parry Pronoic (the opposite of paranoic): forces are conspiring to make your life better. --------------------------------------------------------------------- Please check that your question has not already been answered in the FAQ before posting. <http://xml.apache.org/cocoon/faqs.html> To unsubscribe, e-mail: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>