As usual here, you forgot to tell which version of cocoon you're using...
Here is an (short!) example of what you can do with C1.8.2 (it may slightly
differ with C2):
<xsp:page
xmlns:xsp="http://www.apache.org/1999/XSP/Core"
xmlns:auth="http://ulim.cocoonhost.com/auth"
xmlns:request="http://www.apache.org/1999/XSP/Request"
xmlns:session="http://www.apache.org/1999/XSP/Session"
xmlns:foo="http://localhost/foo"
xmlns:esql="http://apache.org/cocoon/SQL/v2"
xmlns:util="http://www.apache.org/1999/XSP/Util"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xinclude="http://www.w3.org/1999/XML/xinclude"
>
[...]
<esql:connection>
<esql:pool>foo</esql:pool> <!-- which DB ? -->
<esql:execute-query>
<esql:query>
select b.ref as ref b.quantite as nb
from basket b
where b.id = <request:get-parameter name="fragResultID"/>
<!-- using a HTTP req. param. -->
</esql:query>
<esql:results>
<esql:row-results> <!-- repeated for each row in the result set
-->
<foo:basket>
<foo:item-ref><esql:get-string
column="ref"/></foo:item-ref>
<foo:item-nb><esql:get-int
column="nb"/></foo:item-nb>
</foo:basket>
</esql:row-results>
</esql:results>
<esql:no-results> <!-- if we don't get anything -->
<!-- whatever -->
</esql:no-results>
</esql:execute-query>
</esql:connection>
[more ...]
</xsp:page>
You can retrieve different kind of data, even XML (read the doc, and
esql.xsd in the samples/sql directory)
##########################################################
You can connect directly to the DB (with user ID & pwd) or, much better,
using a connection pool.
Here is mine (from cocoon.properties), using a DB named foo:
# Turbine DB Connection Pool
############################
# These are your database settings, look in the
# org.apache.turbine.util.db.pool.* package for more information.
processor.xsp.pool.database.foo.driver=org.gjt.mm.mysql.Driver
processor.xsp.pool.database.foo.url=jdbc:mysql://your.mysql.server/foo
processor.xsp.pool.database.foo.username=foouser
processor.xsp.pool.database.foo.password=foopwd
processor.xsp.pool.database.foo.maxConnections=5
processor.xsp.pool.database.foo.expiryTime=3600000
[...]
# These are the supported jdbc-drivers and their adaptors.
# These properties are used by the DBFactory.
processor.xsp.pool.database.adaptor=DBMM
processor.xsp.pool.database.adaptor.DBMM=org.gjt.mm.mysql.Driver
You will need the JDBC adaptater for mysql (see the official mysql site,
sun's JDBC section, or search the list's archives about it)
HTH,
Olivier
> -----Message d'origine-----
> De : [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]
> Envoyé : mardi 31 juillet 2001 09:08
> À : [EMAIL PROTECTED]
> Objet : Connecting database and XML pages
>
>
> Hi,
>
> I have a mySQL database. I also have a web server:
> Apache-Tomcat-Cocoon. I
> want to make web pages written in XML, transformed to HTML or
> WML by the
> help of Cocoon. These pages will serve as an interface to the
> database.
>
> What is the best way to connect the database with the XML
> pages? My users
> should be able to read and write in the database.
>
> Any tips, suggestions, experiences and examples are greatly
> appreciated!
>
> /Anne Marie
---------------------------------------------------------------------
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]>