Ho provato a passare uno w3c.dom.Document
, Element
e NodeList
come parametri a una trasformazione xslt.passaggio di nodi xml/documenti/frammenti come parametri a xslt
Voglio essere in grado di elaborare entro l'XSLT:
<xsl:param name="links" />
<xsl:template match="/">
<record>
<xsl:for-each select="$links/*">
<test />
</xsl:for-each>
</record>
</xsl:template>
passo il parametro come:
Document params = createLinksParams(links);
transformer.setParameter("links", params);
ottengo questa eccezione:
'di conversione non valido da 'com.sun.org.apache.xerces.internal.dom.DocumentImpl' a 'nodo-set'. '
ho provato anche exslt:node-set()
, xalan:nodeset()
ecc, ma non funziona.
Sembra che internamente xalan escluda la propria implementazione del Nodo.
Come posso fare qualcosa di simile senza incorrere in questo problema?
Non riesco a utilizzare document($param)
perché costruisco il documento al volo.
Grazie, ho optato per 4 – ithkuil
Soluzione 3 non sembra funzionare quando il nodo da passare come parametro proviene da un documento DOM che non è il documento che viene trasformato. – ithkuil