java in xsl /Fehlermeldung bei id-Links
canonica
- xsl
0 svg4you0 Thomas J.S.
Liebe Cracks ...
Mein Problem ist die Fehlermeldung des InternetExplorers7 : "Namespace 'http://xml.apache.org/xslt/java' does not contain any functions."
XML-dokument und DTD validiert. Das zugehörige XSL-Stylesheet stellt korrekt Text, Formatierung, dokumenteninterne Links und externe Links (URL) dar.
Die 3. Möglichkeit, Links zu definieren (innerhalb Dokumentenpool/Lexikon)wurde über id's gemacht: Diese funktionieren nicht!!
im XSL: ...
<xsl:template match="ilink">
<xsl:variable name="firstc"> <xsl:value-of select="substring(@id,1,1)"/>
</xsl:variable>
<xsl:variable name="fileNameXML"> <xsl:value-of select="concat('../' , $firstc , '/', @id, '.xml')"/>
</xsl:variable>
<xsl:variable name="fileXML" select="java:java.io.File.new(string($fileNameXML))"/>
<xsl:variable name="fileNameHTM">
<xsl:value-of select="concat('d:/WWW-Root/MCS_HOME/VERZ4/V4KRANK/link/', @id, '/def_' , @id , '.HTM')"/>
</xsl:variable>
<xsl:variable name="fileHTM" select="java:java.io.File.new(string($fileNameHTM))"/>
xsl:choose
<xsl:when test="java:canRead($fileXML)">
<a>
<xsl:attribute name="href">
<xsl:value-of select="concat('../../wdb/', $firstc, '/', @id, '.html#', @anchor)" />
</xsl:attribute>
<xsl:value-of select="."/>
</a>
</xsl:when>
<xsl:when test="java:canRead($fileHTM)">
<a>
<xsl:attribute name="href"> <xsl:value-of select="concat ('../ANK/link/', @id, '/def_' ,@id , '.HTM')"/>
</xsl:attribute>
<xsl:value-of select="."/>
</a>
</xsl:when>
</xsl:choose>
</xsl:template>
Für alle Hinweise bin ich zum voraus schon dankbar!!!
Cesi
Tach canonica,
Mein Problem ist die Fehlermeldung des InternetExplorers7 : "Namespace 'http://xml.apache.org/xslt/java' does not contain any functions."
Vermutlich hilft die Angabe des Namensraumes im Stylesheet (und darauf bezogen das Weglassen im Ausgabedokument):
<xsl:stylesheet xmlns:xsl="..."
xmlns:java="http://xml.apache.org/xslt/java"
exclude-result-prefixes="java">
...
</xsl:stylesheet>
Man liest sich,
svg4you
Hallo,
Liebe Cracks ...
Mein Problem ist die Fehlermeldung des InternetExplorers7 : "Namespace 'http://xml.apache.org/xslt/java' does not contain any functions."
<xsl:variable name="fileXML" select="java:java.io.File.new(string($fileNameXML))"/>
<xsl:when test="java:canRead($fileXML)">
Wenn du die XML/XSL-Transformation direkt im Browser machst, kann das auch nicht funktionieren. java ist dann für den MSXML ein Namensraumpräfix und "java.io.File.new" eigentlich ein Element und so kann eine Funktion (string($fileNameXML)) dann auch nicht "funktioniren".
Und weil du sonst nichts zur Verarbeitung gesagt hast (z.B, dass du vielleicht ein Applet verwendest??), kann ich dir auch nicht mehr dazu sagen.
Grüße
Thomas