Wiki source code of Engine_XalanJ

Version 19.1 by Nicolas Gregoire on 2012/01/10 11:23

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