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