kati: Apache Ant XSLT Task wirft eine Exception

Beitrag lesen

Hallo Christian,

ja, es muss wohl am buggy-parser liegen. ich habe ihn durch xalan2 ersetzt. Nun schaut der Task so aus (Ant 1.7):

<xslt classpath="${xalan2.classpath}" in="checkstyle_report.xml" out="checkstyle_report.html" style="contrib/checkstyle-simple.xsl">
      <factory name="org.apache.xalan.processor.TransformerFactoryImpl">
        <attribute name="http://xml.apache.org/xalan/features/optimize" value="true"/>
      </factory>
    </xslt>

der Pfad zum Xalan2 muss auch im Classpath vorhanden sein oder per -lib parameter beim Ausführen von Ant übergeben werden:

ant -buildfile build.xml -lib $checkstyle_jar:$xalan_jar

Jetzt funktionierts.

danke
kati

Hallo,

[Beispiel]
Die genannte Exception wird auch hier geworfen.

Funktioniert bei mir anstandslos - wenn ich das <cs:-Zeug weglasse und nur Deine Beispiel-Generierte-Datei nutze.

Jetzt frage ich mich, was da nicht stimmt. Sieht mmN
definitiv nach einem Bug aus. Er beschwert sich definitiv über das version-Attribut im xsl:stylesheet.
Mit xsl:version="1.0" funktioniert es genauso wenig, seltsamerweise wird die gleiche Exception geworfen.

Fällt dir dazu noch was ein?

Ist wohl wirklich ein Bug bei Dir. Keine Ahnung... Evtl. ist der zu Grund liegende XML-Parser auch Buggy oder kann keine Namespaces oder die nicht richtig? Das würde das Verhalten auch erklären (wenn man den GNU-Source in Betracht zieht)...

Ansonsten: Schau Dir mein erstes Posting an: Anderen Processor verwenden. Xalan kann man wie gesagt problemlos nutzen, einfach in den Classpath knallen und dann sollte das auch schon laufen (mit den anderen Hinweisen, die ich Dir gegeben habe). Download unter http://xml.apache.org/xalan-j/downloads.html.

Viele grüße,
Christian