Hi All,
I'm just wondering if there is a way to place a java object (not a tree
fragment) into the context output results from an extension element, and have
it stay as an object (and not have it turned into a Document node).
Here is the exact use case. I have a custom extension that creates an object
that is used later on throughout my xslt. The use case I want is:
<xsl:variable name="somevarname">
<custom:myobject>
<custom:property name="blah" value="blah"/>
</custom:myobject>
</xsl:variable>
The function myObject(XSLProcessorContext, ElemExtensionCall) on the object
mapped to the prefix 'custom' creates a java object, and places it to the
output tree thus:
context.outputToResultTree(context.getStylesheet(), myCreatedObject);
Now, when I try to reference that later, it's been turned into a text node on a
Document object whos value is the value of the toString() method for
'myCreatedObject'. So I think I'm using the wrong method here...and that
perhaps there's a better method other than outputToResultTree??
So I'm guessing xalan <xsl:variable...> tag is creating a document fragment
from my object as best it can.
So my question is...is there anyway, to pass myCreatedObject up to the previous
<xsl:variable...> declaration without it being toStringed (another method
somewhere).
My fallback is to declare a varName attribute on all my custom extension and
put the object on the local variable stack myself, but that's a pain and looks
ugly, I'd prefer to do it using xsl:variable.
This is for an open source (large) xalan extension library to be releases asap.
Cheers
Adam
__________________________________________________________________________________
Win 1 of 4 Sony home entertainment packs thanks to Yahoo!7.
Enter now: http://au.docs.yahoo.com/homepageset/
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]