Hi all,
a strange thing ist happening:
On Windows XP, Cocoon 2.1.4 has no problems with the following code, on debian linux cocoon 2.1.4 says:
Sounds like different processors are in use. Endorsed libs?
" Failed to execute pipeline.
org.apache.cocoon.ProcessingException: Failed to execute pipeline.: java.lang.RuntimeException: Can not convert #STRING to a NodeList!
cause: java.lang.RuntimeException: Can not convert #STRING to a NodeList! "
The Code: " <xsl:variable name="project_list"/> <xsl:choose> <xsl:when test="$client = ''"> <xsl:variable name="../project_list" select="/projects/project"/> </xsl:when> <xsl:otherwise> <xsl:variable name="../project_list" select="/projects/project[client=$client]"/> </xsl:otherwise> </xsl:choose>
<xsl:for-each select="$project_list">
(...) "
Does anyone have a clue on this one?
Completely illegal code, on all XSLT processors.
1. variable name "../project_list"
2. The outer variable $project_list is empty. If it will be "filled" with a value, it's either a string or a result tree fragment, not a node list (or node set, what is the better word IMO).
What you want to do seems to be to set the variable $project_list differently depending on $client, just like a filter. If it is not set, you want to have all clients.
<xsl:for-each select="/projects/project[client = $client] |
/projects/project[not(normalize-space($client))]">should do it.
If the jumps were to big, feel free to ask more.
Joerg
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
