Subject: Re: [xsl] how to handle structured data from Java From: Kevin Rodgers <kevin.rodgers@xxxxxxx> Date: Mon, 10 Jan 2005 15:17:16 -0700 |
Robert Koberg writes: > Kevin Rodgers wrote: > > I need to pass an attribute value to a Java method implemented by a > > co-worker and save the resulting object in a variable (since it's a > > relatively expensive operation), then access the object's string > > components. Should I write an extension function in Java to call his > > method and convert the object into a DOM Node that would be stored via > > <xsl:value-of name="variable" select="extension:function(@attribute)">? > > How would I then access its subnodes -- via select="$variable/component-x"? > > You really don't want to use extensions. > > > Or is there a better way? > > I think so. Have your co-worker create a class that implements > javax.xml.transform.URIResolver. It should check for the value coming in > as an href. When the resolver sees your attribute value, have him return > an appropriate XML Source. Then you can do the following in your XSL: > > <xsl:variable name="myvar" select="document(@myattr)"/> OK, but where do I reference HisClass? URIResolver only declares the resolve method, which returns a Source. But the Source interface only declares 2 methods, getSystemId and setSystemId, neither of which is defined to return a dynamic value like an XML string. And since the document function takes a URI, shouldn't the select expression be something like "document(concat('http://server/HisServlet?foo=', @myattr))" If so, then why does he need to implement URIResolver as HisClass -- couldn't he just implement HisServlet? Thanks, -- Kevin Rodgers
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Mixed Content, Edgar Steven | Thread | Re: [xsl] how to handle structured , Robert Koberg |
Re: [xsl] Re: FO questions, J.Pietschmann | Date | Re: [xsl] xsl:sort not working unde, Anton Triest |
Month |