Thanks a lot for the help, it worked. I know that we have still a lot to understand and to learn. Cocoon is a wonderful software but quiet complicated for beginners.
Sincerely Torsten On Sun, 21 Apr 2002, Vadim Gritsenko wrote: > > From: Torsten Reiners [mailto:[EMAIL PROTECTED]] > > > > Hi, > > > > sorry, the first post was not complete (had different settings for the > > keyboard (CTRL-E for end of line and send email :( ) > > > > there is currently a similar question from Zachary A Lendon but so far > no > > answer (Vadim did miss some information). I do have the following > problem: > > > > I call the following web-page > > > http://134.169.75.183:8080/cocoon/example.xsp?identifier="ITWORKS!!!!". > All > > :) I want is to pass the parameter to a logicsheet where the value is > used > > for an database request. I use the files as attached to this mail. > > > > Hope, somebody knows a solution or can tell me where I find an example > how > > to pass parameter (dynamically) to a logicsheet > > > > Thanks. > > Torsten > > > > ------------------------------------------- example.xsp > > ------------------------------------------------ > > > > <?xml version="1.0" encoding="ISO-8859-1"?> > > > > <xsp:page > > language="java" > > xmlns:xsp="http://apache.org/xsp" > > xmlns:vormsexample="http://www.vorms.org/xsl" > > xmlns:xsp-request="http://apache.org/xsp/request/2.0" > > xmlns:cinclude="http://apache.org/cocoon/include/1.0"> > > > > <vormsexample:header/> > > > > <page> > > <vormsexample:link> > > <xsl:attribute name="identifier"> > > Now tell me: what XSL is doing here? Will be: > > <vormsexample:identifier> > > > <xsp-request:get-parameter > name="identifier"/> > > Add ending tag: > > </vormsexample:identifier> > > And remove this one: > > > </xsl:attribute> > > > > </vormsexample:link> > > > > <!-- THIS WORKS but is not dynamic" --> > > <!-- <vormsexample:link > > identifier="LO_VORMS_TP3_BIBLIOGRAPHY_VOSS_REINERS01_1_1"/>--> > > </page> > > </xsp:page> > > > > > > ---------------------------------------------- example.xsl > > ------------------------------------------------ > > > > <?xml version="1.0"?> > > > > <xsl:stylesheet version="1.0" > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > > xmlns:xsp="http://apache.org/xsp" > > xmlns:vormsexample="http://www.vorms.org/xsl" > > xmlns:xsp-request="http://apache.org/xsp/request/2.0" > > xmlns:cinclude="http://apache.org/cocoon/include/1.0" > > > > > > > <xsl:param name="identifier"/> > > Remove this. You pass it differently. And, this is not an XSLT sheet, > this is > *logicsheet*. > > > > > > <xsl:template match="vormsexample:header"> > > <snip why="irrelevant"/> > > > </xsl:template> > > > > <!-- HERE THE PARAMETER SHOULD BE KNOWN (identifier) I DID COMMENT > THE > > DATABASE ACCESS IN THIS EXAMPLE ----------------------------- --> > > <xsl:template match="vormsexample:link"> > > Output of identifier: > > > > <xsl:value-of select="identifier"/> > > This is not even valid XSL. And 100% is not workable logicsheet. Have > you seen logicsheets shipped with Cocoon? > > Must be something like: > > <xsl:variable name="identifier"> > <xsl:choose> > <xsl:when test="@identifier">"<xsl:value-of > select="@identifier"/>"</xsl:when> > <xsl:when test="vormsexample:identifier"> > <xsl:call-template name="get-nested-content"> > <xsl:with-param name="content" > select="vormsexample:identifier"/> > </xsl:call-template> > </xsl:when> > <xsl:otherwise>null</xsl:otherwise> > </xsl:choose> > </xsl:variable> > > > > End of Output > > > > <!-- <cinclude:include> > > <xsp:attribute name="src"> > > <xsp:expr>getURI("<xsl:value-of > > select="@identifier"/>")</xsp:expr> > > Nope. Now you have *variable*, and you should use it: > > <xsp:expr>getURI(<xsl:copy-of select="$identifier"/>)</xsp:expr> > > Note: No quotes (") ! Because it may contain Java code. And, copy-of > instead of value-of: because it may have xsp tags!!! > > > > </xsp:attribute> > > <xsl:apply-templates/> > > </cinclude:include> --> > > <xsl:apply-templates/> > > </xsl:template> > > > > > > <xsl:template match="@*|node()" priority="-1"> > > <xsl:copy> > > <xsl:apply-templates select="@*|node()"/> > > </xsl:copy> > > </xsl:template> > > > > </xsl:stylesheet> > > > > > ------------------------------------------------------------------------ > - > > > SITEMAP----------------------------------------------------------------- > ------ > > --------------------------- > > Within the sitemap we use the following declarations > > > > <map:transformers default="xslt"> > > > > <map:transformer name="xslt" > logger="sitemap.transformer.xslt" > > > src="org.apache.cocoon.transformation.TraxTransformer" > > pool-max="32" pool-min="16" pool-grow="4"> > > <use-request-parameters>false</use-request-parameters> > > <use-browser-capabilities-db>false</use-browser-capabilities-db> > > <use-deli>false</use-deli> > > </map:transformer> > > Remove: > > > <map:transformer > > name="xslt-with-parameters" > logger="sitemap.transformer.xslt" > > > src="org.apache.cocoon.transformation.TraxTransformer" > > pool-max="32" pool-min="16" pool-grow="4"> > > <use-request-parameters>true</use-request-parameters> > > You don't need this for logicsheets. This is *only* for XSL > *transformer*. > > > > <use-browser-capabilities-db>false</use-browser-capabilities-db> > > <use-deli>false</use-deli> > > </map:transformer> > > > > </map:transformers> > > > > <!-- ...... SOME OTHER STUFF --> > > > > > > <map:match pattern="example.xsp"> > > <map:generate type="serverpages" > src="/home/vorms/website/example.xsp"/> > > <map:transform src="/home/vorms/website/vorms_stylesheet.xsl"> > > <map:parameter name="view-source" > > value="/home/vorms/website/example.xsp"/> > > </map:transform> --> > > <map:transform type="cinclude" /> > > This: > > > <map:transform type="xslt-with-parameters" > > src="/home/vorms/logicsheets/example.xsl"> > > <map:parameter name="use-request-parameters" value="true"/> > > <map:parameter name="identifier" value="identifier"/> > > </map:transform> > > is *not* how you apply a logicsheet. Do you understand this at this > moment page is *already* compiled and *executed*? > > Have you seen logicsheet sample shipped with Cocoon?? > > I *highly* recommend to understand it prior writing own logicsheets. Go > there right now: > > http://cvs.apache.org/viewcvs.cgi/xml-cocoon2/src/webapp/docs/samples/xs > p/logicsheet.xsp?rev=1.4&content-type=text/vnd.viewcvs-markup > > Or look in your Cocoon dist. > > Vadim > > > <map:serialize/> > > </map:match> > > > > > --------------------------------------------------------------------- > 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]>