Wiki source code of Engine_XalanJ

Version 17.1 by Nicolas Gregoire on 2012/01/10 11:19

Show last authors
1 [[Xalan-J>>http://xml.apache.org/xalan-j/||rel="__blank" title="Xalan-J Home Page"]] is a Java based XSLT engine by the Apache Project.
2
3
4 Supported XSLT version : 1.0
5
6
7 == Command line ==
8
9 java org.apache.xalan.xslt.Process -in foo.xml -xsl foo.xsl
10
11 == Identification strings ==
12
13 | xsl:vendor-url|http:~/~/xml.apache.org/xalan-j
14 | xsl:vendor|Apache Software Foundation
15 | xsl:version|1.0
16
17 == Special features ==
18
19 * File creation
20 * Code execution
21 * JDBC connectivity
22 * Java properties
23 * CheckEnv()
24
25 == CheckEnv() ==
26
27 The following code will display some information about the execution context :
28
29 [[checkenv.xsl>>attach:checkenv.xsl]]
30
31 TODO
32
33 === Code ===
34
35 ##<?xml version="1.0"?>
36 <xsl:stylesheet xmlns:xsl="http:~/~/www.w3.org/1999/XSL/Transform"
37 xmlns:xalan="http:~/~/xml.apache.org/xalan"
38 exclude-result-prefixes="xalan"
39 version="1.0">##
40
41 <xsl:output indent="yes"/>
42 <xsl:template match="/">
43 (% style="color:red" %)<xsl:copy-of select="xalan:checkEnvironment()"/>
44
45 </xsl:template>
46 \\</xsl:stylesheet>
47
48 === Output ===
49
50 <?xml version="1.0" encoding="UTF-8"?><checkEnvironmentExtension>
51 <EnvironmentCheck version="$Revision$">
52 <environment>
53 <item key="version.DOM.draftlevel">2.0fd</item>
54 <item key="java.class.path">:/usr/share/java/xalan2.jar:/usr/share/java/xml-apis.jar:/usr/share/java/xercesImpl.jar:/usr/share/java/xalan25.jar:/usr/share/java/bsf-2.4.0.jar</item>
55 <item key="version.JAXP">1.1 or higher</item>
56 <item key="java.ext.dirs">/usr/lib/jvm/java-6-openjdk/jre/lib/ext:/usr/java/packages/lib/ext</item>
57 <item key="version.xerces2">Xerces-J 2.9.1</item>
58 <item key="version.xerces1">not-present</item>
59 <item key="version.xalan2_2">Xalan Java 2.7.1</item>
60 <item key="version.xalan1">not-present</item>
61 <item key="version.ant">not-present</item>
62 <item key="java.version">1.6.0_20</item>
63 <item key="version.DOM">2.0</item>
64 <item key="version.crimson">not-present</item>
65 <item key="sun.boot.class.path">/usr/lib/jvm/java-6-openjdk/jre/lib/resources.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rt.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jsse.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jce.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/charsets.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/netx.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/plugin.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rhino.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/modules/jdk.boot.jar:/usr/lib/jvm/java-6-openjdk/jre/classes</item>
66 <foundJar desc="apis.jar-apparent.version" name="xml">xml-apis.jar present-unknown-version</foundJar>
67 <foundJar desc="apis.jar-path" name="xml">/usr/share/java/xml-apis.jar</foundJar>
68 <foundJar desc="apparent.version" name="xercesImpl.jar">xercesImpl.jar WARNING.present-unknown-version</foundJar>
69 <foundJar desc="path" name="xercesImpl.jar">/usr/share/java/xercesImpl.jar</foundJar>
70 <item key="version.SAX">2.0</item>
71 <item key="version.xalan2x">Xalan Java 2.7.1</item>
72 </environment>
73 <status result="OK"/>
74 </EnvironmentCheck>
75 </checkEnvironmentExtension>
76
77 == Java code execution ==
78
79 The following code will display the current date :
80
81 TODO
82
83 == Execution of external commands ==
84
85 The following code will execute the command "touch /tmp/hello" :
86
87 <?xml version="1.0"?>
88 <xsl:stylesheet xmlns:xsl="http:~/~/www.w3.org/1999/XSL/Transform"
89 xmlns:j="http:~/~/xml.apache.org/xalan/java"
90 exclude-result-prefixes="j"
91 version="1.0">
92 <xsl:template match="/">
93 <xsl:variable name="c"><![CDATA[touch = /tmp/hello]]></xsl:variable>
94 <xsl:variable name="a" select="j:split($c, ' = ')"/>
95 <xsl:variable name="r" select="j:java.lang.Runtime.getRuntime()"/>
96 <xsl:variable name="p" select="j:exec($r, $a )"/>
97 No content at the moment ...
98 </xsl:template>
99 </xsl:stylesheet>