Corsi on-line

Trasformare un documento XML in XSLT con CFML

  • CommentiScrivi un commento
  • ForumDiscuti sul forum
  • PrevGestione degli errori in CFML
  • NextForzare il download di un file con CFML

Cold Fusion riesce in maniera molto semplice ad effettuare la trasformazione di un file XML in XSLT utilizzando il comando CFHTTP per reperire file XML, anche remoti.

Prima di passare al codice CFML dell'esempio, creiamo un file XML ed un file XSLT di prova; il primo si chiamerą database.xml ed il secondo style.xsl. Di seguito riporto i codici:

L'articolo continua dopo la pubblicità

database.xml

<?xml version="1.0"?>
<database>
    <record>
        <nome>Giuseppe</nome>
        <cognome>Verdi</cognome>
    </record>
    <record>
        <nome>Antonio</nome>
        <cognome>Bianchi</cognome>
    </record>
    <record>
        <nome>Mario</nome>
        <cognome>Rossi</cognome>
    </record>
</database>
style.xsl
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
    <h1>Elenco utenti</h1>
    <table border="1">
        <tr>
            <th align="left">Nome</th>
            <th align="left">Cognome</th>
        </tr>
        <xsl:for-each select="database/record">
        <tr>
            <td><xsl:value-of select="nome"/></td>
            <td><xsl:value-of select="cognome"/></td>
        </tr>
        </xsl:for-each>
    </table>
</xsl:template>
</xsl:stylesheet>
Segui i link indicati per maggiori informazioni su XML e XSLT.

Passiamo al codice CFML.

Iniziamo con la localizzazione del file XML, applicando il metodo di invio dei dati e di non risolvere la URL del file:

<CFHTTP url="database.xml" method="GET" resolveurl="false">
Localizziamo adesso il file XSLT:
<CFSET mio_xslt = ExpandPath("style.xsl")>
Leggiamo il file XSLT dopo averlo localizzato:
<CFFILE ACTION="READ" FILE="#mio_xslt#" VARIABLE="var_xslt">
Effettuiamo materialmente la trasformazione associando il file XML ed il file XSLT utilizzando la funzione XMLTransform():
<CFSET risultato = XMLTransform(CFHTTP.fileContent, var_xslt)>
Mandiamo in output sulla pagina il risultato della trasformazione:
<cfoutput>#risultato#</cfoutput>
Di seguito il codice completo dell'applicazione:
<CFHTTP url="database.xml" method="GET" resolveurl="false">
<CFSET mio_xslt = ExpandPath("style.xsl")>
<CFFILE ACTION="READ" FILE="#mio_xslt#" VARIABLE="var_xslt">
<CFSET risultato = XMLTransform(CFHTTP.fileContent, var_xslt)>
<cfoutput>#risultato#</cfoutput>

Partecipa alle pre-registrazioni dei domini .cloud

Non perdere l'opportunitą di aggiudicarti prima degli altri uno dei nuovi domini .cloud! Prenota i migliori domini e proteggi il tuo nome!

Corsi
  • Corso ASP e Access
    Corso ASP e Access
    Gestione di un database MS Access con ASP. A partire da 29 €
  • Corso HTML5
    Corso HTML5
    Creare pagine web di ultima generazione sfruttando la potenza di HTML5. A partire da 39 €
  • Corso Joomla!
    Corso Joomla!
    Creare siti web utilizzando Joomla! 2.5. A partire da 29 €
Vedi anche...
Guide