Gant
  1. Gant
  2. GANT-34

Cannot execute a simple Ivy.cachepath

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.1.2
    • Fix Version/s: 1.3.0
    • Component/s: Tools
    • Labels:
      None
    • Environment:
      Redhat Fedora 9, Sun JDK 1.5.0_15
      Mac OS X 10.4, Sun JDK 1.5.0_13-b05-241, Gant Subversion Trunk r9137
      Solaris 10 11/06, Sun JDK 1.6.0_05-b13, Gant Subversion Trunk r9137
    • Number of attachments :
      0

      Description

      I am trying to use the Ivy tool with GANT 1.1.2 + Groovy 1.5.5

      The following very basic build file, fails with this error:

      java.lang.LinkageError: loader constraints violated with linking org/w3c/dom/Node class

      I can execute an Ivy.settings perfrectly fine, but the moment I try a resolve, cachepath or cachefileset,
      it fails.

      build.gant
      ---------------------------

      includeTool << gant.tools.Ivy;
      
      target ( 'default' : 'default target' ) {
        Ivy.cachepath ( organisation : 'apache',
                                    module : 'commons-lang',
                                    revision : '2.3',
                                    pathid : 'clpath',
                                    inline : true );
      }
      

        Activity

        Hide
        Russel Winder added a comment -

        This problem also affects the other operating system versions added and is a problem for 1.2.0-SNAPSHOT as well as 1.1.2.

        The conflict appears to be in class lookups and class loaders. I am beginning to think it is a Groovy problem not a Gant problem per se. I need to see if the problem is reproducible in Groovy.

        My current hypothesis is that the problem arises because there are versions of the classes and interfaces in rt.jar which are loaded by the bootclass loader and then there are version of the classes and interfaces in xml-apis.jar which are loaded by the Groovy rootloader.

        One person has reported on the email list getting round the problem by ensuring that the xml-apis.jar released with Ivy are earlier in the classpath than any other jar that has these classes – of which there are a large number in the Java world

        This problem is not restricted to Ivy, it also affects using the junitreport Ant task. Indeed I suspect it affects any task that uses the XML processing features of Java.

        I view this as a critical problem in need of fixing before releasing Gant 1.2.0.

        Show
        Russel Winder added a comment - This problem also affects the other operating system versions added and is a problem for 1.2.0-SNAPSHOT as well as 1.1.2. The conflict appears to be in class lookups and class loaders. I am beginning to think it is a Groovy problem not a Gant problem per se. I need to see if the problem is reproducible in Groovy. My current hypothesis is that the problem arises because there are versions of the classes and interfaces in rt.jar which are loaded by the bootclass loader and then there are version of the classes and interfaces in xml-apis.jar which are loaded by the Groovy rootloader. One person has reported on the email list getting round the problem by ensuring that the xml-apis.jar released with Ivy are earlier in the classpath than any other jar that has these classes – of which there are a large number in the Java world This problem is not restricted to Ivy, it also affects using the junitreport Ant task. Indeed I suspect it affects any task that uses the XML processing features of Java. I view this as a critical problem in need of fixing before releasing Gant 1.2.0.
        Hide
        Russel Winder added a comment -

        I should point out that it all works perfectly on Ubuntu 7.10 Gutsy Gibbon, supporting the hypothesis that this is a classpath/class lookup/class loaders issue, not an issue with Gant code per se.

        Show
        Russel Winder added a comment - I should point out that it all works perfectly on Ubuntu 7.10 Gutsy Gibbon, supporting the hypothesis that this is a classpath/class lookup/class loaders issue, not an issue with Gant code per se.
        Hide
        Matt Inger added a comment -

        I should also point out that this does not work on windows either. I get a slightly different error involving something about "itable", which i can paste in later when i'm back at my work machine where i setup the test.

        Show
        Matt Inger added a comment - I should also point out that this does not work on windows either. I get a slightly different error involving something about "itable", which i can paste in later when i'm back at my work machine where i setup the test.
        Hide
        Russel Winder added a comment -

        The error message difference is a JVM version difference. I believe Windows has 1.6.0_05 as does my Solaris 10, and the messages are different to those of JDK 1.5.x. I have posted the two error message to the Groovy developer list. The Groovy team is cogitating, hopefully a solution will arise.

        Interestingly Windows behaviour changes depending on whether you are on a mounted drive, a local drive or a UNC drive

        Show
        Russel Winder added a comment - The error message difference is a JVM version difference. I believe Windows has 1.6.0_05 as does my Solaris 10, and the messages are different to those of JDK 1.5.x. I have posted the two error message to the Groovy developer list. The Groovy team is cogitating, hopefully a solution will arise. Interestingly Windows behaviour changes depending on whether you are on a mounted drive, a local drive or a UNC drive
        Hide
        Paul King added a comment -

        For me, adding xercesImpl.jar and xml-apis.jar to my Groovy lib directory seemed to resolve the problem.

        Show
        Paul King added a comment - For me, adding xercesImpl.jar and xml-apis.jar to my Groovy lib directory seemed to resolve the problem.
        Hide
        Russel Winder added a comment - - edited

        Paul,

        Thanks for checking this and confirming earlier data that adding those two jars into the Groovy classpath sorts things out.

        I guess I will have to put a notice somewhere in the FAQ that if you get this stupid error then it is an XML processing error in the Java/Groovy class lookup and that putting these jars in ~/.gant/lib sorts it out.

        Jochen appears to have confirmed that this problem has its roots in the Groovy classloader and its different behaviour to that of other classloaders. I only mention this to try and convince people that this isn't a Gant problem!

        Show
        Russel Winder added a comment - - edited Paul, Thanks for checking this and confirming earlier data that adding those two jars into the Groovy classpath sorts things out. I guess I will have to put a notice somewhere in the FAQ that if you get this stupid error then it is an XML processing error in the Java/Groovy class lookup and that putting these jars in ~/.gant/lib sorts it out. Jochen appears to have confirmed that this problem has its roots in the Groovy classloader and its different behaviour to that of other classloaders. I only mention this to try and convince people that this isn't a Gant problem!
        Hide
        Russel Winder added a comment -

        Consensus is that this is a classloader, classpath issue relating to the plethora of XML processing jars and the replication of classes in many jars.

        The workaround is to ensure that xercesImpl,jar and xml-apis.jar are in the Groovy classpath so they get loaded by the Groovy classloader and there is no reliance on versions of XML processing classes in rt.jar

        Show
        Russel Winder added a comment - Consensus is that this is a classloader, classpath issue relating to the plethora of XML processing jars and the replication of classes in many jars. The workaround is to ensure that xercesImpl,jar and xml-apis.jar are in the Groovy classpath so they get loaded by the Groovy classloader and there is no reliance on versions of XML processing classes in rt.jar
        Hide
        Russel Winder added a comment -

        There is a minor fault in the original script. I think the organization for command-lang is commons-lang:

        includeTool << gant.tools.Ivy
        
        target ( 'default' : 'default target' ) {
          ivy.cachepath ( organisation : 'commons-lang' ,
                          module : 'commons-lang' ,
                          revision : '2.3' ,
                          pathid : 'clpath' ,
                          inline : true )
        }
        
        Show
        Russel Winder added a comment - There is a minor fault in the original script. I think the organization for command-lang is commons-lang: includeTool << gant.tools.Ivy target ( ' default ' : ' default target' ) { ivy.cachepath ( organisation : 'commons-lang' , module : 'commons-lang' , revision : '2.3' , pathid : 'clpath' , inline : true ) }
        Hide
        Russel Winder added a comment -

        The fix of adding the xercesImpl.jar and xml-api.jar only works if they go into $GROOVY_HOME/lib. Adding them to ~/.groovy/lib or ~/.gant/lib appears not to work.

        Show
        Russel Winder added a comment - The fix of adding the xercesImpl.jar and xml-api.jar only works if they go into $GROOVY_HOME/lib. Adding them to ~/.groovy/lib or ~/.gant/lib appears not to work.
        Hide
        Paul King added a comment -

        I was using Groovy 1.5.6 and Java 1.6.

        I needed to copy xercesImpl.jar and xml-apis.jar for Windows XP and Windows Vista.

        I didn't need to do it for Ubuntu 8.04 or OpenSolaris 5.11.

        Show
        Paul King added a comment - I was using Groovy 1.5.6 and Java 1.6. I needed to copy xercesImpl.jar and xml-apis.jar for Windows XP and Windows Vista. I didn't need to do it for Ubuntu 8.04 or OpenSolaris 5.11.
        Hide
        Paul King added a comment -

        Regarding organisation:apache vs organisation:commons-lang, I think the former is the Ivy preferred unique id for this artifact whereas the latter is the Maven2 id. I changed to the latter as I don't have any Ivy settings pointing to a repo with that in (is there one?) and Maven2's defaults point to the maven2 repo which contains most of the resources I use including that one.

        Show
        Paul King added a comment - Regarding organisation:apache vs organisation:commons-lang , I think the former is the Ivy preferred unique id for this artifact whereas the latter is the Maven2 id. I changed to the latter as I don't have any Ivy settings pointing to a repo with that in (is there one?) and Maven2's defaults point to the maven2 repo which contains most of the resources I use including that one.
        Hide
        Wayne Keenan added a comment -

        I have a similar issue with Gant, Apache ODE and the ODE BPEL compiler task 'bpelc'

        setups:

        windows XP
        java1.5 & 1.6 (both fail, the latter with better error message)
        groovy 1.5.5 and groovy 1.5.6 (both fail)
        gant 1.1.2
        ODE 1.1.1

        Note: 'bpelc' works find as an ANT tasks in java 1.5 and 1.6

        1. java1.5, groovy 1.5.6, no additonal jars in groovy/lib

        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found

        2. java1.5, groovy 1.5.6, additonal xalan-2.7.0.jar in groovy/lib

        java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class

        3. java1.6, groovy 1.5.6, no additional jars in groovy/lib

        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found

        4. java1.6, groovy 1.5.6, additional xalan-2.7.0.jarin groovy/lib

        java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t
        he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f
        or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature

        Show
        Wayne Keenan added a comment - I have a similar issue with Gant, Apache ODE and the ODE BPEL compiler task 'bpelc' setups: windows XP java1.5 & 1.6 (both fail, the latter with better error message) groovy 1.5.5 and groovy 1.5.6 (both fail) gant 1.1.2 ODE 1.1.1 Note: 'bpelc' works find as an ANT tasks in java 1.5 and 1.6 1. java1.5, groovy 1.5.6, no additonal jars in groovy/lib javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found 2. java1.5, groovy 1.5.6, additonal xalan-2.7.0.jar in groovy/lib java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class 3. java1.6, groovy 1.5.6, no additional jars in groovy/lib javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found 4. java1.6, groovy 1.5.6, additional xalan-2.7.0.jarin groovy/lib java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature
        Hide
        Wayne Keenan added a comment -

        I created a standard Groovy AntBuilder build script and the bpelc task worked fine.

        Show
        Wayne Keenan added a comment - I created a standard Groovy AntBuilder build script and the bpelc task worked fine.
        Hide
        Wayne Keenan added a comment -

        I have included my 3 build files 1x Ant, 1x Groovy AntBuilder & 1x Gant for the Ode sample called HelloWorld2
        Windows XP SP2
        Java 1.5
        Groovy 1.5.6
        Gant 1.1.2
        Ant 1.7.0
        ODE 1.1.1

        All but the Gant script work, which outputs: java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class

        Ant:
        <project name="HelloWorldBPEL" default="compile" basedir=".">

        <property environment="env" />

        <taskdef name="bpelc" classname="org.apache.ode.tools.bpelc.ant.BpelCTask">
        <classpath>
        <fileset dir="$

        {env.ODE_HOME}

        /lib">
        <include name="*.jar" />
        </fileset>
        </classpath>

        </taskdef>

        <target name="compile">
        <bpelc>
        <bpel url="./HelloWorld2.bpel" />
        </bpelc>
        </target>

        </project>

        Groovy:

        def ant = new AntBuilder()

        def odeHome = System.getenv ( ).'ODE_HOME'
        ant.echo (message:"ODE_HOME= $

        {odeHome}")

        ant.path ( id : 'odeJarSet' ) { fileset ( dir : odeHome + '/lib' , includes : '*.jar') }

        ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:'odeJarSet')

        ant.bpelc( ) { bpel (url:"./HelloWorld2.bpel" ) }







        Gant:

        def odeHome = System.getenv ( ).'ODE_HOME'
        Ant.echo (message:"ODE_HOME= ${odeHome}

        ")

        Ant.path ( id : 'odeJarSet' )

        { fileset ( dir : odeHome + '/lib' , includes : '*.jar') }

        //System.setProperty("java.endorsed.dirs", odeHome + '/lib');

        performCompile = { classpathRef ->

        Ant.pathconvert(property:"bpel.path.compile", refid:classpathRef, pathsep:"$

        {System.properties.'line.separator'}

        | |-- ")
        Ant.echo (message:"|-- BPEL compile classpath")
        Ant.echo (message:"| |")
        Ant.echo (message:"| |-- $

        {Ant.project.properties.'bpel.path.compile'}

        ")

        Ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:classpathRef)

        Ant.bpelc( )

        { bpel (url:"./HelloWorld2.bpel" ) }

        }

        target ( compile : 'Compile everything needed for a BPEL .' )

        { performCompile ( 'odeJarSet' ) }

        setDefaultTarget ( compile )

        Show
        Wayne Keenan added a comment - I have included my 3 build files 1x Ant, 1x Groovy AntBuilder & 1x Gant for the Ode sample called HelloWorld2 Windows XP SP2 Java 1.5 Groovy 1.5.6 Gant 1.1.2 Ant 1.7.0 ODE 1.1.1 All but the Gant script work, which outputs: java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class Ant: <project name="HelloWorldBPEL" default="compile" basedir="."> <property environment="env" /> <taskdef name="bpelc" classname="org.apache.ode.tools.bpelc.ant.BpelCTask"> <classpath> <fileset dir="$ {env.ODE_HOME} /lib"> <include name="*.jar" /> </fileset> </classpath> </taskdef> <target name="compile"> <bpelc> <bpel url="./HelloWorld2.bpel" /> </bpelc> </target> </project> Groovy: def ant = new AntBuilder() def odeHome = System.getenv ( ).'ODE_HOME' ant.echo (message:"ODE_HOME= $ {odeHome}") ant.path ( id : 'odeJarSet' ) { fileset ( dir : odeHome + '/lib' , includes : '*.jar') } ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:'odeJarSet') ant.bpelc( ) { bpel (url:"./HelloWorld2.bpel" ) } Gant: def odeHome = System.getenv ( ).'ODE_HOME' Ant.echo (message:"ODE_HOME= ${odeHome} ") Ant.path ( id : 'odeJarSet' ) { fileset ( dir : odeHome + '/lib' , includes : '*.jar') } //System.setProperty("java.endorsed.dirs", odeHome + '/lib'); performCompile = { classpathRef -> Ant.pathconvert(property:"bpel.path.compile", refid:classpathRef, pathsep:"$ {System.properties.'line.separator'} | |-- ") Ant.echo (message:"|-- BPEL compile classpath") Ant.echo (message:"| |") Ant.echo (message:"| |-- $ {Ant.project.properties.'bpel.path.compile'} ") Ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:classpathRef) Ant.bpelc( ) { bpel (url:"./HelloWorld2.bpel" ) } } target ( compile : 'Compile everything needed for a BPEL .' ) { performCompile ( 'odeJarSet' ) } setDefaultTarget ( compile )
        Hide
        Russel Winder added a comment -

        Wayne,

        Thanks for chipping in on this.

        If you had the Groovy/AntBuilder code working and the Gant code does not then Gant has a problem, and it needs investigating. I have loaded up apache-ode-war-1.1.1 to get the needed jars for trials. Can you send me the HelloWorld2.bpel file, I can then run experiments here to see what may or may not be going wrong.

        Perhaps in here there is a good workaround to avoid loading xercesImpl.jar and xml-apis.jar manually.

        Show
        Russel Winder added a comment - Wayne, Thanks for chipping in on this. If you had the Groovy/AntBuilder code working and the Gant code does not then Gant has a problem, and it needs investigating. I have loaded up apache-ode-war-1.1.1 to get the needed jars for trials. Can you send me the HelloWorld2.bpel file, I can then run experiments here to see what may or may not be going wrong. Perhaps in here there is a good workaround to avoid loading xercesImpl.jar and xml-apis.jar manually.
        Hide
        Wayne Keenan added a comment -

        Hi,

        The BPEL file I refer to is part of the binary release archive, you can find it and its dependant resources in: apache-ode-war-1.1.1/examples/HelloWorld2

        All the best,
        Wayne

        Show
        Wayne Keenan added a comment - Hi, The BPEL file I refer to is part of the binary release archive, you can find it and its dependant resources in: apache-ode-war-1.1.1/examples/HelloWorld2 All the best, Wayne
        Hide
        Matt Inger added a comment -

        Just a quick clarification. I use a locally hosted ivy repository, hence the "apache" org rather than "commons-lang". We do this to ensure that there's a measure of control around which libraries people are allowed to include in their applications.

        Show
        Matt Inger added a comment - Just a quick clarification. I use a locally hosted ivy repository, hence the "apache" org rather than "commons-lang". We do this to ensure that there's a measure of control around which libraries people are allowed to include in their applications.
        Hide
        Wayne Keenan added a comment -

        Hi,

        I just though I would follow up with some a little more info after installing Gant 1.2.0 (not expeting a fix, just to help with the most current view of the owlr,
        I also hope to add a little clarification as to the placement of the Xalan jar and the libraries used.

        Groovy Version: 1.5.6 JVM: 1.5.0_10-b03

        When the gant script runs the bpelc task adds these jars:

        apache-ode-war-1.1.1\lib\commons-codec-1.3.jar
        apache-ode-war-1.1.1\lib\commons-collections-3.1.jar
        apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar
        apache-ode-war-1.1.1\lib\commons-logging-1.1.jar
        apache-ode-war-1.1.1\lib\commons-pool-1.2.jar
        apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar
        apache-ode-war-1.1.1\lib\log4j-1.2.13.jar
        apache-ode-war-1.1.1\lib\ode-bpel-api.jar
        apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar
        apache-ode-war-1.1.1\lib\ode-bpel-obj.jar
        apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar
        apache-ode-war-1.1.1\lib\ode-tools.jar
        apache-ode-war-1.1.1\lib\ode-utils.jar
        apache-ode-war-1.1.1\lib\saxon-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar
        apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar
        apache-ode-war-1.1.1\lib\xalan-2.7.0.jar
        apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar

        The script produces the error:
        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found

        So I copied Xalan jar to the $GROOVY_HOME/lib dir and get this error:

        java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class

        then switching JVM versions: Groovy Version: 1.5.6 JVM: 1.6.0_03-b05
        The error is more verbose:

        java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t
        he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f
        or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature

        I thought I would try something so added the ODE/libs to the endorsJAVA_OPTS env var, e.g. set JAVA_OPTS -Djava.endorsed.dirs= ...
        and got:

        taskdef A class needed by class org.apache.ode.tools.bpelc.ant.BpelCTask cannot be found: org/apache/tools/ant/Task

        So I then added the GROOVY_HOME/libs to the endorsed dirs and received the same error.

        I then stopped hackishness.

        Show
        Wayne Keenan added a comment - Hi, I just though I would follow up with some a little more info after installing Gant 1.2.0 (not expeting a fix, just to help with the most current view of the owlr, I also hope to add a little clarification as to the placement of the Xalan jar and the libraries used. Groovy Version: 1.5.6 JVM: 1.5.0_10-b03 When the gant script runs the bpelc task adds these jars: apache-ode-war-1.1.1\lib\commons-codec-1.3.jar apache-ode-war-1.1.1\lib\commons-collections-3.1.jar apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar apache-ode-war-1.1.1\lib\commons-logging-1.1.jar apache-ode-war-1.1.1\lib\commons-pool-1.2.jar apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar apache-ode-war-1.1.1\lib\log4j-1.2.13.jar apache-ode-war-1.1.1\lib\ode-bpel-api.jar apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar apache-ode-war-1.1.1\lib\ode-bpel-obj.jar apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar apache-ode-war-1.1.1\lib\ode-tools.jar apache-ode-war-1.1.1\lib\ode-utils.jar apache-ode-war-1.1.1\lib\saxon-8.7.jar apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar apache-ode-war-1.1.1\lib\xalan-2.7.0.jar apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar The script produces the error: javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found So I copied Xalan jar to the $GROOVY_HOME/lib dir and get this error: java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class then switching JVM versions: Groovy Version: 1.5.6 JVM: 1.6.0_03-b05 The error is more verbose: java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature I thought I would try something so added the ODE/libs to the endorsJAVA_OPTS env var, e.g. set JAVA_OPTS -Djava.endorsed.dirs= ... and got: taskdef A class needed by class org.apache.ode.tools.bpelc.ant.BpelCTask cannot be found: org/apache/tools/ant/Task So I then added the GROOVY_HOME/libs to the endorsed dirs and received the same error. I then stopped hackishness.
        Hide
        Paul King added a comment -

        Wayne,

        What happens if you place just the xalan jar and xercesImpl jar into GROOVY_HOME/lib and leave everything else in vanilla form, i.e. no endorsed jars?

        Paul.

        Show
        Paul King added a comment - Wayne, What happens if you place just the xalan jar and xercesImpl jar into GROOVY_HOME/lib and leave everything else in vanilla form, i.e. no endorsed jars? Paul.
        Hide
        Wayne Keenan added a comment -

        Hi,

        Sorry, I had ommited that variation in my post, with no JAVA_OPT setting the results are :

        java 1.5:
        java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class

        java1.6:
        java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t
        he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f
        or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature

        List of jars:
        apache-ode-war-1.1.1\lib\commons-codec-1.3.jar
        apache-ode-war-1.1.1\lib\commons-collections-3.1.jar
        apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar
        apache-ode-war-1.1.1\lib\commons-logging-1.1.jar
        apache-ode-war-1.1.1\lib\commons-pool-1.2.jar
        apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar
        apache-ode-war-1.1.1\lib\log4j-1.2.13.jar
        apache-ode-war-1.1.1\lib\ode-bpel-api.jar
        apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar
        apache-ode-war-1.1.1\lib\ode-bpel-obj.jar
        apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar
        apache-ode-war-1.1.1\lib\ode-tools.jar
        apache-ode-war-1.1.1\lib\ode-utils.jar
        apache-ode-war-1.1.1\lib\saxon-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar
        apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar
        apache-ode-war-1.1.1\lib\xalan-2.7.0.jar
        apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar

        I then tried with these: (note that the Xalan and xerces are not explicitly included)

        apache-ode-war-1.1.1\lib\commons-codec-1.3.jar
        apache-ode-war-1.1.1\lib\commons-collections-3.1.jar
        apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar
        apache-ode-war-1.1.1\lib\commons-logging-1.1.jar
        apache-ode-war-1.1.1\lib\commons-pool-1.2.jar
        apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar
        apache-ode-war-1.1.1\lib\log4j-1.2.13.jar
        apache-ode-war-1.1.1\lib\ode-bpel-api.jar
        apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar
        apache-ode-war-1.1.1\lib\ode-bpel-obj.jar
        apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar
        apache-ode-war-1.1.1\lib\ode-tools.jar
        apache-ode-war-1.1.1\lib\ode-utils.jar
        apache-ode-war-1.1.1\lib\saxon-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar
        apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar
        apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar

        and got the same errors:

        java1.5
        java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class

        java1.6
        java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t
        he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f
        or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature

        Show
        Wayne Keenan added a comment - Hi, Sorry, I had ommited that variation in my post, with no JAVA_OPT setting the results are : java 1.5: java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class java1.6: java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature List of jars: apache-ode-war-1.1.1\lib\commons-codec-1.3.jar apache-ode-war-1.1.1\lib\commons-collections-3.1.jar apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar apache-ode-war-1.1.1\lib\commons-logging-1.1.jar apache-ode-war-1.1.1\lib\commons-pool-1.2.jar apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar apache-ode-war-1.1.1\lib\log4j-1.2.13.jar apache-ode-war-1.1.1\lib\ode-bpel-api.jar apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar apache-ode-war-1.1.1\lib\ode-bpel-obj.jar apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar apache-ode-war-1.1.1\lib\ode-tools.jar apache-ode-war-1.1.1\lib\ode-utils.jar apache-ode-war-1.1.1\lib\saxon-8.7.jar apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar apache-ode-war-1.1.1\lib\xalan-2.7.0.jar apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar I then tried with these: (note that the Xalan and xerces are not explicitly included) apache-ode-war-1.1.1\lib\commons-codec-1.3.jar apache-ode-war-1.1.1\lib\commons-collections-3.1.jar apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar apache-ode-war-1.1.1\lib\commons-logging-1.1.jar apache-ode-war-1.1.1\lib\commons-pool-1.2.jar apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar apache-ode-war-1.1.1\lib\log4j-1.2.13.jar apache-ode-war-1.1.1\lib\ode-bpel-api.jar apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar apache-ode-war-1.1.1\lib\ode-bpel-obj.jar apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar apache-ode-war-1.1.1\lib\ode-tools.jar apache-ode-war-1.1.1\lib\ode-utils.jar apache-ode-war-1.1.1\lib\saxon-8.7.jar apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar and got the same errors: java1.5 java.lang.LinkageError: loader constraints violated when linking org/w3c/dom/Node class java1.6 java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.xerces.dom.NodeImpl.item(I)Lorg/w3c/dom/Node;" t he class loader (instance of org/codehaus/groovy/tools/RootLoader) of the current class, org/apache/xerces/dom/NodeImpl, and the class loader (instance of <bootloader>) f or interface org/w3c/dom/NodeList have different Class objects for the type org/w3c/dom/Node used in the signature
        Hide
        Paul King added a comment -

        Re: I then tried with these: (note that the Xalan and xerces are not explicitly included)

        Just checking. You removed xalan and xerces jars from taskdef classpath and added them to $GROOVY_HOME/lib?

        Show
        Paul King added a comment - Re: I then tried with these: (note that the Xalan and xerces are not explicitly included) Just checking. You removed xalan and xerces jars from taskdef classpath and added them to $GROOVY_HOME/lib?
        Hide
        Wayne Keenan added a comment -

        yes.

        Show
        Wayne Keenan added a comment - yes.
        Hide
        Russel Winder added a comment -

        This problem is solved in Gant 1.3.0 because of the change in the way that the Ivy jar is loaded.

        Show
        Russel Winder added a comment - This problem is solved in Gant 1.3.0 because of the change in the way that the Ivy jar is loaded.
        Hide
        Wayne Keenan added a comment -

        Nice to see this progressing, its much better thanks, although I'm not sure its fully resolved, or needs a documented workaround?

        For my Apache ODE 1.1.1 build I downloaded the 1.3.0 standalone zip and run my build script mentioned in my previous testing comments.
        (e.g. Ant 1.7.0)

        Unfortunately I received this error:

        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found

        To resolve the error I had to put the xalan-2.7.0.jar shipped with Ode into the %GANT_HOME%/lib folder, thoughts? a feature?

        en route I tried setting JAVA_OPTS and had these results:

        1)

        JAVA_OPTS=-Djava.endorsed.dirs=%ODE_HOME%\lib

        Error:
        taskdef A class needed by class org.apache.ode.tools.bpelc.ant.BpelCTask cannot be found: org/apache/tools/ant/Task

        2)

        JAVA_OPTS=-Djava.endorsed.dirs=%ODE_HOME%\lib;%ANT_HOME%\lib

        Error:

        Could not create type bpelc due to java.lang.ExceptionInInitializerError

        Regards
        Wayne

        Show
        Wayne Keenan added a comment - Nice to see this progressing, its much better thanks, although I'm not sure its fully resolved, or needs a documented workaround? For my Apache ODE 1.1.1 build I downloaded the 1.3.0 standalone zip and run my build script mentioned in my previous testing comments. (e.g. Ant 1.7.0) Unfortunately I received this error: javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found To resolve the error I had to put the xalan-2.7.0.jar shipped with Ode into the %GANT_HOME%/lib folder, thoughts? a feature? en route I tried setting JAVA_OPTS and had these results: 1) JAVA_OPTS=-Djava.endorsed.dirs=%ODE_HOME%\lib Error: taskdef A class needed by class org.apache.ode.tools.bpelc.ant.BpelCTask cannot be found: org/apache/tools/ant/Task 2) JAVA_OPTS=-Djava.endorsed.dirs=%ODE_HOME%\lib;%ANT_HOME%\lib Error: Could not create type bpelc due to java.lang.ExceptionInInitializerError Regards Wayne
        Hide
        Russel Winder added a comment -

        I think the Xalan issue is not an error but just a question of ensuring the right classpath. Rather than actually copy the jar into a directory known to Gant – $HOME/.gant/lib or $GANT_HOME/lib – you can use a command line parameter:

        gant -cp $ODE_HOME/lib/xalan-2.7.0.jar . . .

        If this works then it is indeed just a classpath issue.

        I have never tinkered with the java.endorsed.dirs property approach to setting up an effective classpath, but it strikes me that Ant is not on the list of overridable standards, so I don't see that this is going to work.

        Show
        Russel Winder added a comment - I think the Xalan issue is not an error but just a question of ensuring the right classpath. Rather than actually copy the jar into a directory known to Gant – $HOME/.gant/lib or $GANT_HOME/lib – you can use a command line parameter: gant -cp $ODE_HOME/lib/xalan-2.7.0.jar . . . If this works then it is indeed just a classpath issue. I have never tinkered with the java.endorsed.dirs property approach to setting up an effective classpath, but it strikes me that Ant is not on the list of overridable standards, so I don't see that this is going to work.
        Hide
        Wayne Keenan added a comment -

        Xalan should be in my path along with the BPELC task.

        Here is the entire gant script:

        def odeHome = System.getenv ( ).'ODE_HOME'
        Ant.echo (message:"ODE_HOME= $

        {odeHome}

        ")

        Ant.path ( id : 'odeJarSet' )

        { fileset ( dir : odeHome + '/lib' , includes : '*.jar') }

        performCompile = { classpathRef ->

        Ant.pathconvert(property:"bpel.path.compile", refid:classpathRef, pathsep:"$

        {System.properties.'line.separator'}

        | |-- ")
        Ant.echo (message:"|-- BPEL compile classpath")
        Ant.echo (message:"| |")
        Ant.echo (message:"| |-- $

        {Ant.project.properties.'bpel.path.compile'}

        ")

        Ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:classpathRef)

        Ant.bpelc( )

        { bpel (url:"./project.bpel" ) }

        }

        target ( compile : 'Compile everything needed for a BPEL .' )

        { performCompile ( 'odeJarSet' ) }

        setDefaultTarget ( compile )

        Here is the output:

        [echo] ODE_HOME= c:\project\lib\apache-ode-war-1.1.1
        [echo] |-- BPEL compile classpath
        [echo] | |
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-codec-1.3.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-collections-3.1.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-logging-1.1.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-pool-1.2.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\log4j-1.2.13.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-api.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-obj.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-tools.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-utils.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-8.7.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\xalan-2.7.0.jar
        [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar
        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found

        Show
        Wayne Keenan added a comment - Xalan should be in my path along with the BPELC task. Here is the entire gant script: def odeHome = System.getenv ( ).'ODE_HOME' Ant.echo (message:"ODE_HOME= $ {odeHome} ") Ant.path ( id : 'odeJarSet' ) { fileset ( dir : odeHome + '/lib' , includes : '*.jar') } performCompile = { classpathRef -> Ant.pathconvert(property:"bpel.path.compile", refid:classpathRef, pathsep:"$ {System.properties.'line.separator'} | |-- ") Ant.echo (message:"|-- BPEL compile classpath") Ant.echo (message:"| |") Ant.echo (message:"| |-- $ {Ant.project.properties.'bpel.path.compile'} ") Ant.taskdef(name:"bpelc", classname:"org.apache.ode.tools.bpelc.ant.BpelCTask", classpathref:classpathRef) Ant.bpelc( ) { bpel (url:"./project.bpel" ) } } target ( compile : 'Compile everything needed for a BPEL .' ) { performCompile ( 'odeJarSet' ) } setDefaultTarget ( compile ) Here is the output: [echo] ODE_HOME= c:\project\lib\apache-ode-war-1.1.1 [echo] |-- BPEL compile classpath [echo] | | [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-codec-1.3.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-collections-3.1.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-httpclient-3.0.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-logging-1.1.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\commons-pool-1.2.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\jaxen-1.1-beta-8.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\log4j-1.2.13.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-api.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-compiler.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-obj.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-bpel-schemas.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-tools.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\ode-utils.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-8.7.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-dom-8.7.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\saxon-xpath-8.7.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\wsdl4j-1.6.1.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\xalan-2.7.0.jar [echo] | |-- c:\project\lib\apache-ode-war-1.1.1\lib\xercesImpl-2.9.0.jar javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
        Hide
        Russel Winder added a comment - - edited

        Wayne,

        I'm afraid I get a very different problem. Am I missing something?

        BTW Would it be enough to use printf rather than have to use ant.echo?

        PS In Gant 1.2.0 and later ant should be lower case – upper case will be deprecated shortly.

        > ll
        total 28
        drwx------ 2 russel russel 4096 2008-06-10 15:08 ./
        drwx------ 34 russel russel 4096 2008-06-09 17:52 ../
        rw------ 1 russel russel 278 2008-04-26 13:04 build.gant
        rw------ 1 russel russel 2449 2008-04-27 07:22 HelloWorld2.bpel
        rw------ 1 russel russel 442 2008-04-26 18:48 keenanAnt.xml
        rw------ 1 russel russel 792 2008-04-26 18:49 keenanGant.gant
        rw------ 1 russel russel 362 2008-04-27 07:21 keenanGroovy.groovy

        > gant -f keenanGant.gant
        [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1
        [echo] |-- BPEL compile classpath
        [echo] | |
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar
        10-Jun-2008 14:05:02 org.apache.ode.bpel.compiler.DefaultResourceFinder openResource
        SEVERE: openResource: unable to open file URL file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl; java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl (No such file or directory)
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlParseError] null: [PARSER_ERROR] WSDLException: faultCode=PARSER_ERROR: Problem parsing 'file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl'.: java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl (No such file or directory)
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlImportFailed] Unable to import WSDL at URI "HelloWorld2.wsdl"; WSDL fault code "PARSER_ERROR".
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:39: error: [UndeclaredMessage] Attempt to reference undeclared WSDL message "HelloMessage" in namespace http://ode/bpel/unit-test.wsdl.
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:35: error: [UndeclaredPartnerLinkType] Attempt to reference undeclared partner link type "

        {http://ode/bpel/unit-test.wsdl}

        HelloPartnerLinkType".
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:50: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink".
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:54: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar".
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:59: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar".
        [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:66: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink".
        error: [CompilationErrors] Compilation completed with 8 error(s):
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlParseError] null: [PARSER_ERROR] WSDLException: faultCode=PARSER_ERROR: Problem parsing 'file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl'.: java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl (No such file or directory)
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlImportFailed] Unable to import WSDL at URI "HelloWorld2.wsdl"; WSDL fault code "PARSER_ERROR".
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:39: error: [UndeclaredMessage] Attempt to reference undeclared WSDL message "HelloMessage" in namespace http://ode/bpel/unit-test.wsdl.
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:35: error: [UndeclaredPartnerLinkType] Attempt to reference undeclared partner link type "

        {http://ode/bpel/unit-test.wsdl}

        HelloPartnerLinkType".
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:50: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink".
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:54: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar".
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:59: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar".
        file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:66: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink".

        Show
        Russel Winder added a comment - - edited Wayne, I'm afraid I get a very different problem. Am I missing something? BTW Would it be enough to use printf rather than have to use ant.echo? PS In Gant 1.2.0 and later ant should be lower case – upper case will be deprecated shortly. > ll total 28 drwx------ 2 russel russel 4096 2008-06-10 15:08 ./ drwx------ 34 russel russel 4096 2008-06-09 17:52 ../ rw ------ 1 russel russel 278 2008-04-26 13:04 build.gant rw ------ 1 russel russel 2449 2008-04-27 07:22 HelloWorld2.bpel rw ------ 1 russel russel 442 2008-04-26 18:48 keenanAnt.xml rw ------ 1 russel russel 792 2008-04-26 18:49 keenanGant.gant rw ------ 1 russel russel 362 2008-04-27 07:21 keenanGroovy.groovy > gant -f keenanGant.gant [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1 [echo] |-- BPEL compile classpath [echo] | | [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar 10-Jun-2008 14:05:02 org.apache.ode.bpel.compiler.DefaultResourceFinder openResource SEVERE: openResource: unable to open file URL file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/HelloWorld2.wsdl ; java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/ GANT-34 /HelloWorld2.wsdl (No such file or directory) [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlParseError] null: [PARSER_ERROR] WSDLException: faultCode=PARSER_ERROR: Problem parsing 'file:/home/users/russel/Progs/OddsByLanguage/Gant/ GANT-34 /HelloWorld2.wsdl'.: java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/ GANT-34 /HelloWorld2.wsdl (No such file or directory) [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlImportFailed] Unable to import WSDL at URI "HelloWorld2.wsdl"; WSDL fault code "PARSER_ERROR". [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:39: error: [UndeclaredMessage] Attempt to reference undeclared WSDL message "HelloMessage" in namespace http://ode/bpel/unit-test.wsdl . [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:35: error: [UndeclaredPartnerLinkType] Attempt to reference undeclared partner link type " {http://ode/bpel/unit-test.wsdl} HelloPartnerLinkType". [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:50: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink". [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:54: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar". [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:59: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar". [bpelc] file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:66: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink". error: [CompilationErrors] Compilation completed with 8 error(s): file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlParseError] null: [PARSER_ERROR] WSDLException: faultCode=PARSER_ERROR: Problem parsing 'file:/home/users/russel/Progs/OddsByLanguage/Gant/ GANT-34 /HelloWorld2.wsdl'.: java.io.FileNotFoundException: /home/users/russel/Progs/OddsByLanguage/Gant/ GANT-34 /HelloWorld2.wsdl (No such file or directory) file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:30: error: [WsdlImportFailed] Unable to import WSDL at URI "HelloWorld2.wsdl"; WSDL fault code "PARSER_ERROR". file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:39: error: [UndeclaredMessage] Attempt to reference undeclared WSDL message "HelloMessage" in namespace http://ode/bpel/unit-test.wsdl . file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:35: error: [UndeclaredPartnerLinkType] Attempt to reference undeclared partner link type " {http://ode/bpel/unit-test.wsdl} HelloPartnerLinkType". file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:50: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink". file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:54: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar". file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:59: error: [UndeclaredVariable] Attempt to reference undeclared variable "myVar". file:/home/users/russel/Progs/OddsByLanguage/Gant/GANT-34/./HelloWorld2.bpel:66: error: [UndeclaredPartnerLink] Attempt to reference undeclared partner link "helloPartnerLink".
        Hide
        Wayne Keenan added a comment -

        you are missing the HelloWorld2.wsdl , sorry if I forgot to zip it, which available in your
        /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/samples/HelloWorld2 folder.

        You could also CD into that folder and copy and paste my recent script changing :

        Ant.bpelc( )

        { bpel (url:"./project.bpel" ) }

        to

        Ant.bpelc( )

        { bpel (url:"./HelloWorld2.bpel" ) }

        It would and thanks for the tip, this was my first gant script .

        Show
        Wayne Keenan added a comment - you are missing the HelloWorld2.wsdl , sorry if I forgot to zip it, which available in your /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/samples/HelloWorld2 folder. You could also CD into that folder and copy and paste my recent script changing : Ant.bpelc( ) { bpel (url:"./project.bpel" ) } to Ant.bpelc( ) { bpel (url:"./HelloWorld2.bpel" ) } It would and thanks for the tip, this was my first gant script .
        Hide
        Russel Winder added a comment - - edited

        OK I copied HelloWorld2.wsdl from the ODE examples directory to my working directory and we now have an "it works for me" situation. Which gives hope that we can fix it for you but doesn't help discover what your problem is.

        > gant -f keenanGant.gant
        [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1
        [echo] |-- BPEL compile classpath
        [echo] | |
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar
        [bpelc] Compilation completed in 2799ms

        Show
        Russel Winder added a comment - - edited OK I copied HelloWorld2.wsdl from the ODE examples directory to my working directory and we now have an "it works for me" situation. Which gives hope that we can fix it for you but doesn't help discover what your problem is. > gant -f keenanGant.gant [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1 [echo] |-- BPEL compile classpath [echo] | | [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar [bpelc] Compilation completed in 2799ms
        Hide
        Russel Winder added a comment - - edited

        OK, some progress – if we can call it that

        On Mac OS X I get:

        > gant -f keenanGant.gant
        [echo] ODE_HOME= /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1
        [echo] |-- BPEL compile classpath
        [echo] | |
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar
        [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar
        java.lang.ExceptionInInitializerError
        >

        Whilst on Solaris, I get the error you are getting:

        > gant -f keenanGant.gant
        [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1
        [echo] |-- BPEL compile classpath
        [echo] | |
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar
        [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar
        javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
        >

        So the data here is that Ubuntu is set up to avoid the problem!

        Show
        Russel Winder added a comment - - edited OK, some progress – if we can call it that On Mac OS X I get: > gant -f keenanGant.gant [echo] ODE_HOME= /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1 [echo] |-- BPEL compile classpath [echo] | | [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar [echo] | |-- /Users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar java.lang.ExceptionInInitializerError > Whilst on Solaris, I get the error you are getting: > gant -f keenanGant.gant [echo] ODE_HOME= /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1 [echo] |-- BPEL compile classpath [echo] | | [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-codec-1.3.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-collections-3.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-httpclient-3.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-logging-1.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/commons-pool-1.2.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/jaxen-1.1-beta-8.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/log4j-1.2.13.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-api.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-compiler.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-obj.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-bpel-schemas.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-tools.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/ode-utils.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-dom-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/saxon-xpath-8.7.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/wsdl4j-1.6.1.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xalan-2.7.0.jar [echo] | |-- /home/users/russel/lib/JavaPackages/apache-ode-war-1.1.1/lib/xercesImpl-2.9.0.jar javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found > So the data here is that Ubuntu is set up to avoid the problem!
        Hide
        Russel Winder added a comment -

        I think we have a handle on the problem, but not a solution as yet. The script:

        def antBuilder = new AntBuilder ( )
        
        antBuilder.taskdef ( name : 'bpelc', classname : 'org.apache.ode.tools.bpelc.ant.BpelCTask' ) {
          classpath { fileset ( dir : System.getenv ( ).'ODE_HOME' + '/lib' , includes : '*.jar' ) }
        }
        
        antBuilder.bpelc { bpel ( url : './HelloWorld2.bpel' ) }
        

        works fine when executed as a Groovy script but fails when executed as a Gant script. Thus the failure is in the way Gant sets things up.

        There is a workaround, load all the ODE jars before executing the Gant script. So for the script:

        target ( compile : 'Compile everything needed for a BPEL .' ) {
          ant.taskdef ( name : 'bpelc', classname : 'org.apache.ode.tools.bpelc.ant.BpelCTask' )
          ant.bpelc { bpel ( url : './HelloWorld2.bpel' ) }
        }
        
        setDefaultTarget ( compile )
        

        when executed using the command line:

        > gant -f workaround.gant -L ~/lib/JavaPackages/apache-ode-war-1.1.1/lib

        works fine on Ubuntu, Mac OS X and Solaris.

        Show
        Russel Winder added a comment - I think we have a handle on the problem, but not a solution as yet. The script: def antBuilder = new AntBuilder ( ) antBuilder.taskdef ( name : 'bpelc', classname : 'org.apache.ode.tools.bpelc.ant.BpelCTask' ) { classpath { fileset ( dir : System .getenv ( ).'ODE_HOME' + '/lib' , includes : '*.jar' ) } } antBuilder.bpelc { bpel ( url : './HelloWorld2.bpel' ) } works fine when executed as a Groovy script but fails when executed as a Gant script. Thus the failure is in the way Gant sets things up. There is a workaround, load all the ODE jars before executing the Gant script. So for the script: target ( compile : 'Compile everything needed for a BPEL .' ) { ant.taskdef ( name : 'bpelc', classname : 'org.apache.ode.tools.bpelc.ant.BpelCTask' ) ant.bpelc { bpel ( url : './HelloWorld2.bpel' ) } } setDefaultTarget ( compile ) when executed using the command line: > gant -f workaround.gant -L ~/lib/JavaPackages/apache-ode-war-1.1.1/lib works fine on Ubuntu, Mac OS X and Solaris.
        Hide
        Wayne Keenan added a comment -

        Using your 2 scripts I get the following output on WinXP:

        C:\project\lib\apache-ode-war-1.1.1\examples\HelloWorld2>gant -f russellBuild.gant -L ..\..\lib

        log4j:WARN No appenders could be found for logger (org.apache.ode.bpel.compiler.BpelC).
        log4j:WARN Please initialize the log4j system properly.
        [bpelc] Compilation completed in 1218ms

        C:\project\\lib\apache-ode-war-1.1.1\examples\HelloWorld2>groovy russellBuild.groovy
        [bpelc] Compilation completed in 2094ms

        Show
        Wayne Keenan added a comment - Using your 2 scripts I get the following output on WinXP: C:\project\lib\apache-ode-war-1.1.1\examples\HelloWorld2>gant -f russellBuild.gant -L ..\..\lib log4j:WARN No appenders could be found for logger (org.apache.ode.bpel.compiler.BpelC). log4j:WARN Please initialize the log4j system properly. [bpelc] Compilation completed in 1218ms C:\project\\lib\apache-ode-war-1.1.1\examples\HelloWorld2>groovy russellBuild.groovy [bpelc] Compilation completed in 2094ms
        Hide
        Wayne Keenan added a comment -

        I forgot to clarify/confirm your observation for the case of when running the groovy script via gant, on XP:

        C:\project\lib\apache-ode-war-1.1.1\examples\HelloWorld2>gant -f russellBuild.groovy
        russellBuild.groovy, line 7 – Error evaluating Gantfile: javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactory
        Impl not found

        Show
        Wayne Keenan added a comment - I forgot to clarify/confirm your observation for the case of when running the groovy script via gant, on XP: C:\project\lib\apache-ode-war-1.1.1\examples\HelloWorld2>gant -f russellBuild.groovy russellBuild.groovy, line 7 – Error evaluating Gantfile: javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactory Impl not found
        Hide
        Russel Winder added a comment -

        I think all the Gant problems noted in this issue have been fixed, so I am closing it. If there are still errors that need fixing please open new issues.

        Show
        Russel Winder added a comment - I think all the Gant problems noted in this issue have been fixed, so I am closing it. If there are still errors that need fixing please open new issues.

          People

          • Assignee:
            Russel Winder
            Reporter:
            Matt Inger
          • Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: