You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Markus Blasl <bl...@fzi.de> on 2003/06/12 20:05:59 UTC
Get values from Postgres database
Hello,
i want to set up an application with a postgres database.
It's my first contact with cocoon so far, maybe someone can help.
What I did so far:
Installed Postgres, Apache, Tomcat and Cocoon.
Everything is working fine, and I also played a little bit with the
cocoon features.
Now I downloaded the JDBC-Driver for Postgres and put it into cocoons
lib dir.
then edited web.xml:
<init-param>
<param-name>load-class</param-name>
<param-value>
<!-- For IBM WebSphere:
com.ibm.servlet.classloader.Handler -->
<!-- For Database Driver: -->
org.hsqldb.jdbcDriver
org.postgresql.Driver
<!-- For parent ComponentManager sample:
org.apache.cocoon.samples.parentcm.Configurator
-->
</param-value>
</init-param>
And I also edited cocoon.xconf:
<datasources>
<jdbc name="films">
<pool-controller min="5" max="10"/>
<dburl>jdbc:postgresql:test://localhost:5432</dburl>
<user>blasl</user>
<password/>
</jdbc>
</datasources>
If i put there something other then test (my database) thn on tty0 comes
up DATABASE ... not found. So I guess that everything is set up ok so far.
Now I created a new directory under mount and put an xml-file in there:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsp:page language="java"
xmlns:xsp="http://apache.org/xsp"
xmlns:sql="http://apache.org/cocoon/SQL/v2"
>
<page>
<sql:connection>
<sql:pool>films</sql:pool>
<transactions>
<sql:execute-query>
<sql:query>
select * from films
</sql:query>
<sql:results>
<sql:row-results>
<trans>
<id>
<sql:get-string column="code"/>
</id>
<my_title>
<sql:get-string column="title"/>
</my_title>
<date1>
<sql:get-date column="date_prod"
format="dd. MMM. yyyy"/>
</date1>
<date2>
<sql:get-date column="date_in"
format="dd. MMM. yyyy"/>
</date2>
<account>
<sql:get-string column="kind"/>
</account>
</trans>
</sql:row-results>
</sql:results>
<sql:no-results>
No records found...
</sql:no-results>
<sql:error-results>
SQL Exception: <sql:get-message/>
</sql:error-results>
</sql:execute-query>
</transactions>
</sql:connection>
</page>
</xsp:page>
I also have my own sitemap.xmap file in there:
<?xml version="1.0" encoding="iso-8859-1"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<!-- use the standard components -->
<map:components>
<map:generators default="file"/>
<map:transformers default="xslt"/>
<map:readers default="resource"/>
<map:serializers default="html"/>
<map:selectors default="browser"/>
<map:matchers default="wildcard"/>
</map:components>
<map:pipelines>
<map:pipeline>
<!-- respond to *.html requests with
our docs processed by doc2html.xsl -->
<map:match pattern="*.html">
<map:generate src="{1}.xml"/>
<map:transform src="doc2html.xsl"/>
<map:serialize type="html"/>
</map:match>
<map:match pattern="sql/*">
<map:transform type="sql">
<map:parameter name="use-connection" value="films"/>
</map:transform>
<map:transform src="stylesheets/simple-sql2html.xsl"/>
<map:serialize/>
</map:match>
</map:pipeline>
</map:pipelines>
</map:sitemap>
This is the table of my database:
Table "public.films"
Column | Type | Modifiers
-----------+-------------------------+-----------
code | character(5) | not null
title | character varying(40) | not null
date_prod | date |
date_in | date |
kind | character(15) |
len | interval hour to minute |
Indexes: firstkey primary key btree (code)
When I now try to get the html-output of the xml file, all i get is this:
films select * from films No records found... SQL Exception:
Please, if anyone has an idea how to fix it, I'd really be happy.
Thanks in advance,
Markus
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org