Scusate, dunque ho fatto altre prove, ma nulla, spiego meglio:
Io ho provato così:
File Xsl Principale:
codice:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:include href="include1.xsl"/>
<xsl:template match="/">
<html><body>
Homepage
<xsl:call-template name="album"/>
</body></html>
</xsl:template>
</xsl:stylesheet>
File include1.xsl:
codice:
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:template name="album">
BLA BLA
</xsl:template>
</xsl:stylesheet>
Tutto ciò richiamato dalla JSP:
codice:
<%@ page contentType="text/html" %>
<%@ page session="true" %>
<%@ page buffer="30kb" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<c:set var="xmlDocument" scope="page">
<ROOT></ROOT>
</c:set>
<x:parse xml="${xmlDocument}" var="xml"/>
<c:set var="xslUrl"><%="/XSL/ITA/Esempio3.xsl"%></c:set>
<c:import var="xslDocument" url="${xslUrl}" scope="page"/>
<x:parse xml="${xslDocument}" var="xsl"/>
<x:transform xml="${xml}" xslt="${xsl}"/>
Ho provato ad utilizzare un tool di NetBeans, XSL Trasformations che genera un
output dato un file .xml e il tutto funziona correttamente.
Ho provato a prendere tutto il template name="album" e metterlo nel xsl
principale, richiamato sempre da <xsl:call-template name="album"/> e funziona.
Dunque pare che l'inclusione non avviene e fallisce l'istruzione
<xsl:call-template name="album"/>
Infatti il Tomcat segnala questi errori:
ERRORE: 'Maschera 'album' non definita in questo foglio di stile. '
ERRORE GRAVE: 'Impossibile compilare il foglio di stile '
Ma il percorso di inclusione è corretto, di fatti se lo cambio e faccio la
validazione con netbeans, lui mi segnala file non trovato, e in ogni caso ho
provato le varie possibili combinazioni di percorso....