MadM
Mitglied
Hi Leutz,
ich bin gerade dabei, DocBook zu testen/evaluieren, d.h. ich versuche es, denn funktioniert hat es bisher nicht.
Hier die Umgebung:
Und hier die Test-Klasse:
Das Ergebnis hiervon ist folgende Fehlermeldung:
Was mache ich falsch? Habe mich schon tot gegoogelt nach diesem Fehler...nix zu finden. An besager Stelle in der Datei html.xsl ist folgendes zu finden:
Danke für jeden Hinweis!
Gruß
Matthias
ich bin gerade dabei, DocBook zu testen/evaluieren, d.h. ich versuche es, denn funktioniert hat es bisher nicht.
Hier die Umgebung:
- DocBook 4.5 (http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip)
- Docbook XSL 1.75.2 (http://sourceforge.net/projects/docbook/files/docbook-xsl/1.75.2)
- Xalan 2.7.1 (http://xml.apache.org/xalan-j/)
- Classpath:
- JRE 5
- xml-apis.jar, serializer.jar, xercesImpl.jar,xalan.jar (alle aus der Xalan Distribution 2.7.1)
- xalan27.jar, saxon65.jar aus dem extensions-Ordner der docbook-xsl Distribution
XML:
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<book lang="en">
<bookinfo>
<title>Book Title</title>
<pubdate>2009</pubdate>
</bookinfo>
<chapter>
<title>Chapter</title>
<sect1>
<title>Section 1 </title>
<para>
A paragraph
</para>
</sect1>
</chapter>
</book>
Java:
import java.io.FileOutputStream;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.apache.xalan.xsltc.trax.TransformerFactoryImpl;
public class Test {
public static void main(String[] args) throws Exception {
StreamSource source = new StreamSource("docbook-xsl/html/html.xsl");
StreamSource xmlSource = new StreamSource("book.xml");
FileOutputStream outputStream = new FileOutputStream("book.html");
StreamResult outputTarget = new StreamResult(outputStream);
TransformerFactory factory = new TransformerFactoryImpl();
Transformer transformer = factory.newTransformer(source);
transformer.transform(xmlSource, outputTarget);
}
}
Code:
FEHLER: '/docbook/docbook-xsl/html/html.xsl: line 20: Variable oder Parameter 'writing.mode' ist nicht definiert.'
SCHWER WIEGENDER FEHLER: 'Die Formatvorlage konnte nicht kompiliert werden.'
Exception in thread "main" javax.xml.transform.TransformerConfigurationException: Die Formatvorlage konnte nicht kompiliert werden.
at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:832)
at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:618)
at Test.main(Test.java:19)
Was mache ich falsch? Habe mich schon tot gegoogelt nach diesem Fehler...nix zu finden. An besager Stelle in der Datei html.xsl ist folgendes zu finden:
XML:
<xsl:variable name="direction.align.start">
<xsl:choose>
<xsl:when test="starts-with($writing.mode, 'lr')">left</xsl:when>
<xsl:when test="starts-with($writing.mode, 'rl')">right</xsl:when>
<xsl:otherwise>left</xsl:otherwise>
</xsl:choose>
</xsl:variable>
Danke für jeden Hinweis!
Gruß
Matthias
Zuletzt bearbeitet von einem Moderator: