Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    44

    [ java saxon ] motore xslt

    ciao devo usare saxon in eclipse ho importato il jar in web-inf->lib nel dynamic web progect e aggiunto il jar nel build path del progetto.. uso le api di javax che vanno bene anche con saxon. Vorrei essere sicuro si usare saxon e non il motore di defaul. C' è un modo per esserne sicuro?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [ java saxon ] motore xslt

    Originariamente inviato da emix0880
    uso le api di javax che vanno bene anche con saxon.
    Se vuoi un esempio di codice che usa la Transformation API di JAXP, vedi tra i miei Java Examples nella sezione XML.

    Originariamente inviato da emix0880
    Vorrei essere sicuro si usare saxon e non il motore di defaul. C' è un modo per esserne sicuro?
    TransformerFactory usa una ben precisa logica di ricerca per trovare la implementazione di TransformerFactory da caricare. E questa procedura è descritta nella documentazione di newInstance()

    Da Java 6 esiste anche un'altra versione di newInstance a cui puoi passare un String con il nome della classe factory (che implementa TransformerFactory).

    La classe di Saxon che implementa TransformerFactory è indicata al fondo di questa pagina.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Re: [ java saxon ] motore xslt

    Originariamente inviato da andbin
    La classe di Saxon che implementa TransformerFactory è indicata al fondo di questa pagina.
    Piccola svista (mia), quello indicato nella pagina è la implementazione di Transformer, non TransformerFactory.

    La implementazione della factory specifica di Saxon è net.sf.saxon.TransformerFactoryImpl (ci sono 2 sottoclassi per le versioni professional e enterprise di Saxon).

    Già che ci sono, chiarisco che se non si ha interesse a rendere generico il codice (facendo in modo che sia la Transformation API di JAXP a trovare la implementazione della factory) ma si vuole legare il codice ad una precisa implementazione ..... la cosa più veloce è istanziare direttamente la factory!!

    Invece di fare

    TransformerFactory tfactory = TransformerFactory.newInstance();

    Si può fare:

    TransformerFactory tfactory = new net.sf.saxon.TransformerFactoryImpl();

    Certo ... è legato direttamente a Saxon .... ma se vi va bene è ok.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.