You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Emmanuel Fouché <em...@atosorigin.com> on 2002/11/26 18:19:37 UTC

xslt task & Xalan2

I just downloads the 1.5.1 release and intend to do some nice xslt
transformation.
Alas, when I execute the following task:

<target name="transform-config">
<xslt basedir="${version.xml.dir}/server/dao-factory.xml" 
	destdir="${version.xml-transform.dir}/server"
	extension=".properties" 
	style="${version.xml.dir}/server/dao-factory.xsl"
	classpath="${xalan.home}/${xalan.jar.path}">
	<param name="db-type" expression="oracle"/>
	<outputproperty name="method" value="text"/>
	<outputproperty name="encoding" value="iso-8859-1"/>
</xslt>
</target>

I get the following error:
     [xslt] DEPRECATED - xslp processor is deprecated. Use trax or xalan
instead.
     [xslt] java.lang.ClassNotFoundException:
org.apache.tools.ant.taskdefs.optional.XslpLiaison
     [xslt]     at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader
.java:1076)
     [xslt]     at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1037)
     [xslt]     at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:926)
     [xslt]     at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.loadClass(XSLTProcess.java:398
)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.resolveProcessor(XSLTProcess.j
ava:375)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.getLiaison(XSLTProcess.java:55
7)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:195)
     [xslt]     at org.apache.tools.ant.Task.perform(Task.java:319)
     [xslt]     at org.apache.tools.ant.Target.execute(Target.java:309)
     [xslt]     at
org.apache.tools.ant.Target.performTasks(Target.java:336)
     [xslt]     at
org.apache.tools.ant.Project.executeTarget(Project.java:1306)
     [xslt]     at
org.apache.tools.ant.Project.executeTargets(Project.java:1250)
     [xslt]     at org.apache.tools.ant.Main.runBuild(Main.java:610)
     [xslt]     at org.apache.tools.ant.Main.start(Main.java:196)
     [xslt]     at org.apache.tools.ant.Main.main(Main.java:235)
     [xslt] java.lang.ClassNotFoundException:
org.apache.tools.ant.taskdefs.optional.XalanLiaison
     [xslt]     at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader
.java:1076)
     [xslt]     at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1037)
     [xslt]     at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:926)
     [xslt]     at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.loadClass(XSLTProcess.java:398
)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.resolveProcessor(XSLTProcess.j
ava:378)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.getLiaison(XSLTProcess.java:55
4)
     [xslt]     at
org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:195)
     [xslt]     at org.apache.tools.ant.Task.perform(Task.java:319)
     [xslt]     at org.apache.tools.ant.Target.execute(Target.java:309)
     [xslt]     at
org.apache.tools.ant.Target.performTasks(Target.java:336)
     [xslt]     at
org.apache.tools.ant.Project.executeTarget(Project.java:1306)
     [xslt]     at
org.apache.tools.ant.Project.executeTargets(Project.java:1250)
     [xslt]     at org.apache.tools.ant.Main.runBuild(Main.java:610)
     [xslt]     at org.apache.tools.ant.Main.start(Main.java:196)
     [xslt]     at org.apache.tools.ant.Main.main(Main.java:235)

I found out that the build process of the 1.5.1 release excludes the
compilation 
of XalanLiaison unless you have Xalan1 installed and accessible to ant,
i.e. in 
the ${ant.home}/lib directory). 
To bad since the ant release ships with Xerces2.

The additionnal trouble is that Xalan1.x is no more downloadable from
apache:
<cite url="http://xml.apache.org/xalan-j/index.html">
Xalan-Java version 1 is no longer supported and no longer available from
xml.apache.org.
</cite>

Well, I'm wondering wether someone managed to use xalan2 with ant for
the xslt/style tasks,
and how to correctly build the release.

Regards,
	Emmanuel 


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: RE : xslt task & Xalan2

Posted by Stefan Bodewig <bo...@apache.org>.
On Wed, 27 Nov 2002, Emmanuel Fouch <em...@atosorigin.com>
wrote:

> Do I have to specify a 'taskdef' to use this syntax?

Even more than that
<http://jakarta.apache.org/ant/faq.html#delegating-classloader>.

Stefan

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


RE : xslt task & Xalan2

Posted by Emmanuel Fouché <em...@atosorigin.com>.
Thanks,

it worked when I put xalan.jar in $ANT_HOME/lib.

However, I still wonder why the exception is thrown when I specified the

absolute path in the classpath attribute.
[classpath="${xalan.home}/build/xalan.jar"]
Do I have to specify a 'taskdef' to use this syntax?

Regards,
	Emmanuel

> -----Message d'origine-----
> De : Stefan Bodewig [mailto:bodewig@apache.org] 
> Envoyé : mercredi 27 novembre 2002 09:14
> À : ant-user@jakarta.apache.org
> Objet : Re: xslt task & Xalan2
> 
[...]
 
> Correct.  XalanLiaison is only used for Xalan1.  TraxLiaison 
> is used for Xalan2.
> 
> Make sure you have xalan.jar, xml-apis.jar and optional.jar 
> in your CLASSPATH or in ANT_HOME/lib when using <xslt>.
> 
> Stefan


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: xslt task & Xalan2

Posted by Stefan Bodewig <bo...@apache.org>.
On Tue, 26 Nov 2002, Emmanuel Fouch <em...@atosorigin.com>
wrote:

> I found out that the build process of the 1.5.1 release excludes the
> compilation of XalanLiaison unless you have Xalan1 installed and
> accessible to ant, i.e. in the ${ant.home}/lib directory).

Correct.  XalanLiaison is only used for Xalan1.  TraxLiaison is used
for Xalan2.

Make sure you have xalan.jar, xml-apis.jar and optional.jar in your
CLASSPATH or in ANT_HOME/lib when using <xslt>.

Stefan

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>