On Sun, 16 Dec 2001, Wolfram Eisert wrote: The right approach to this problem is to restructure the testdb.xsl as a logicsheet and register it in the cocoon.xconf file.
Giacomo > Hi, > > you can first build your xsp in a seperate pipeline and use > this result as a source for your serverpages-processing. > > Example: > > <map:pipeline internal-only="true"> > <map:match pattern="build_xsp"> > <map:generate src="build_xsp_src.xml"/> > <map:transform src="build_xsp_transform.xsl"/> > <map:serialize type="xml"/> > </map:match> > </map:pipeline> > > <map:pipeline> > <map:match pattern="test.xml"> > <map:generate type="serverpages" src="cocoon:/build_xsp"/> > <map:transform src="xsp_transform.xsl"/> > <map:serialize type="html"/> > </map:match> > </map:pipeline> > > Hope this helps! > > Wolfram > > > -----Ursprüngliche Nachricht----- > > Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] > > Gesendet: Samstag, 15. Dezember 2001 21:35 > > An: [EMAIL PROTECTED] > > Betreff: Applying custom style sheets before logicsheets [HELP!] > > > > > > Hi, > > > > This question may seem very simple, but bear with me as I am > > quite new to cocoon. > > > > I am using Cocoon 2. I have an XSP page [testdb.xsp], and want > > to pass this through a stylesheet [testdb.xsl], then apply the > > built-in cocoon 2 logic sheets [particularly the esql], apply a > > xml to html stylesheet and then serialize as html. What do I > > have to do to make this work? > > > > I have started by placing using esql from the testdb.xsp directly > > - this works as expected. Trouble is, I want the SQL queries to > > be "generated" by the testdb.xsl stylesheet, so removing the esql > > from testdb.xsp and making the testdb.xsl generate them instead > > does not "execute" them - they stay as <esql:...> even in the > > outputted html. > > > > I have tried many things, such as adding/removing the esql > > namespace from the start of the original xsp document, the xsp > > generated from testdb.xsl, etc, the files below are what are > > "known" to not work. I think it is just something very simple > > that I am missing... > > > > Here is the relevant part of the sitemap: > > <map:match pattern="testdb"> > > <map:generate type="serverpages" src="testdb.xsp"/> > > <map:transform src="testdb.xsl"/> > > <map:transform src="table.xsl"/> > > <map:transform src="stylesheets/dynamic-page2html.xsl"/> > > <map:serialize/> > > </map:match> > > > > testdb.xsl: > > <?xml version="1.0" encoding="ISO-8859-1"?> > > > > > > <xsl:stylesheet > > version="1.0" > > xmlns:xsp="http://apache.org/xsp" > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > > xmlns:xsp-request="http://apache.org/xsp/request/2.0" > > xmlns:esql="http://apache.org/cocoon/SQL/v2" > > > > > > > <xsl:template match="/"> > > <xsp:page> > > <xsl:apply-templates/> > > </xsp:page> > > </xsl:template> > > > > <xsl:template match="data-display"> > > <esql:connection> > > <esql:pool>personnel</esql:pool> > > <esql:execute-query> > > <xsl:apply-templates select="query"/> > > <xsl:apply-templates select="display"/> > > </esql:execute-query> > > </esql:connection> > > </xsl:template> > > > > > > <xsl:template match="query"> > > <esql:query> > > <xsl:value-of select="."/> > > </esql:query> > > </xsl:template> > > > > <xsl:template match="display"> > > <esql:results> > > <xsl:apply-templates/> > > </esql:results> > > </xsl:template> > > > > <xsl:template match="display-table"> > > <br/> > > <table> > > <header> > > <xsl:for-each select="column"> > > <cell> > > <text> > > <xsl:value-of select="title"/> > > </text> > > </cell> > > </xsl:for-each> > > </header> > > > > <!-- header finished, now the data --> > > > > <body> > > <esql:row-results> > > <row> > > <xsl:for-each select="column"> > > <cell> > > <!-- make a reference to the action here --> > > <action> > > <xsl:value-of select="action/@name"/> > > <xsl:value-of select="action/@key"/> > > </action> > > <text> > > <xsl:value-of select="data/@source"/> > > <xsl:value-of select="text"/> > > </text> > > </cell> > > </xsl:for-each> > > </row> > > </esql:row-results> > > </body> > > </table> > > </xsl:template> > > > > <xsl:template match="@*|node()" priority="-1"> > > <xsl:copy> > > <xsl:apply-templates select="@*|node()"/> > > </xsl:copy> > > </xsl:template> > > > > </xsl:stylesheet> > > > > testdb.xsp: > > <?xml version="1.0"?> > > > > <xsp:page language="java" > > xmlns:xsp="http://apache.org/xsp" > > > > > <page> > > <title>Test</title> > > > > <data-display> > > <query>SELECT uid, userid, password FROM users</query> > > <display> > > <display-table> > > <column> > > <title>Username</title> > > <data source="userid"/> > > </column> > > <column> > > <title>Password</title> > > <action name="view" key="uid"/> > > <data source="password"/> > > </column> > > <column> > > <title></title> > > <action name="delete" key="uid"/> > > <text>delete</text> > > </column> > > </display-table> > > </display> > > </data-display> > > </page> > > </xsp:page> > > > > thanks for any help, > > > > > > > > > > > > _______________________________________________________________________ > > Never pay another Internet phone bill! > > Freeserve AnyTime, for all the Internet access you want, day and > > night, only £12.99 per month. > > Sign-up at http://www.freeserve.com/time/anytime > > > > > > > > --------------------------------------------------------------------- > > 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]> > > > > > > > --------------------------------------------------------------------- > 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]> > > > > --------------------------------------------------------------------- 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]>