--- Matt Benson <[EMAIL PROTECTED]> wrote:
> Pardon the top post, all.
>
> We have had trouble here and there with the
> difference
> between "no resources specified" (an error to be
> reported) and "no resources found" (usu. ignore and
> continue). This sounds like that kind of situation
> and I will try to look into it.
>
> As for your question about an easy way to check the
> size of a fileset, Ant 1.7 shipped with the
> <resourcecount> task/condition for just this
> purpose.
Note that this issue is fixed in svn trunk as of now.
br,
Matt
>
> HTH,
> Matt
>
> --- John Shott <[EMAIL PROTECTED]> wrote:
>
> > Steve:
> >
> > Thanks for your informative response and your
> > suspicion that I may have
> > a problem with the size() of my fileset.
> >
> > Since I can't seem to find a simple method of
> trying
> > to test the size of
> > my fileset, in advance of my call of the sql task,
> > I've now tried to
> > modify my target to first create a fileset, then
> > created a property
> > based on a pathcovert of that fileset, and then
> > tried to run the sql
> > task based on a test of that property. While this
> > looks a little ugly
> > and kludgey, it was the only way (I thought) to
> make
> > sure that I was
> > guaranteed to not run the sql task if the fileset
> > was empty.
> >
> > My current target that includes the sql task now
> > looks like:
> >
> > <!-- build.xml snippet starts here -->
> >
> > <target name="loadStoredProcedures">
> > <basename property="this.user"
> > file="${this.dir}"/>
> > <echo message="Loading stored procedures from
> > ${this.dir}."/>
> > <fileset dir="${this.dir}" id="this.fileset">
> > <include name="*.sql"/>
> > <modified>
> > <param name="cache.cachefile"
> > value="config/.sql${sfx}.properties"/>
> > </modified>
> > </fileset>
> > <!-- The following path convert is a trick to
> > simply set a property -->
> > <!-- named ${new.files} only if there are any
> > files to be processed -->
> > <!-- in refid="this.fileset". -->
> > <pathconvert property="new.files"
> > refid="this.fileset"
> > setonempty="false" targetos="unix"/>
> > <if> <isset property="new.files"/>
> > <then>
> > <echo message="Property new.files is set
> to
> > ${new.files}."/>
> > <sql driver="${jdbc_driver_class}"
> > url="${jdbc_url}"
> > userid="${this.user}"
> > password="${coral.db.password}"
> > keepformat="true" delimiter="/"
> > escapeprocessing="false"
> > print="true"
> > onerror="continue">
> > <fileset refid="this.fileset"/>
> > <classpath>
> > <pathelement
> > location="${build.dir}/ext/${jdbc.jar}"/>
> > </classpath>
> > </sql>
> > </then>
> > </if>
> > </target>
> >
> > <!-- build.xml snippet ends here -->
> >
> > I still believe that I am still seeing a failure
> > during the sql task and
> > have included what I believe to be the relevant
> > results of the call 'ant
> > -debug loadStoredProcedures 2>&1 | tee
> > sql_debug.log'
> >
> > Apache Ant version 1.7.0 compiled on December 13
> > 2006
> > Buildfile: build.xml
> > Adding reference: ant.PropertyHelper
> > Detected Java version: 1.5 in:
> > /usr/java/jdk1.5.0_14/jre
> > Detected OS: Linux
> > Finding class net.sf.antcontrib.logic.IfTask
> > Loaded from /opencoral/ext/ant/ant-contrib-0.6.jar
>
> > net/sf/antcontrib/logic/IfTask
> > .class
> > Class
> >
>
org.apache.tools.ant.taskdefs.condition.ConditionBase
> > loaded from
> > parent lo
> > ader (parentFirst)
> > Class net.sf.antcontrib.logic.IfTask loaded from
> ant
> > loader (parentFirst)
> > Finding class
> net.sf.antcontrib.logic.IfTask$ElseIf
> > Loaded from /opencoral/ext/ant/ant-contrib-0.6.jar
>
> > net/sf/antcontrib/logic/IfTask
> > $ElseIf.class
> > Class net.sf.antcontrib.logic.IfTask$ElseIf loaded
> > from ant loader
> > (parentFirst)
> > +Datatype if net.sf.antcontrib.logic.IfTask
> >
> > loadStoredProcedures:
> > Setting project property: this.user -> accmgr
> > [echo] Loading stored procedures from
> > /opencoral/build-rhel4/sql/storedProce
> > dures/accmgr.
> > Adding reference: this.fileset
> > fileset: Setup scanner in dir
> > /opencoral/build-rhel4/sql/storedProcedures/accmgr
> > with patternSet{ includes: [*.sql] excludes: [] }
> > [pathconvert] Set property new.files =
> > /opencoral/build-rhel4/sql/storedProcedure
> >
>
s/accmgr/accounting_summary_source.sql:/opencoral/build-rhel4/sql/storedProcedure
> >
>
s/accmgr/load_rates_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accmgr
> >
>
/raw_accounting_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accmgr/usa
> > ge_summary_source.sql
> > Setting project property: new.files ->
> > /opencoral/build-rhel4/sql/storedProcedure
> >
>
s/accmgr/accounting_summary_source.sql:/opencoral/build-rhel4/sql/storedProcedure
> >
>
s/accmgr/load_rates_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accmgr
> >
>
/raw_accounting_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accmgr/usa
> > ge_summary_source.sql
> > [echo] Property new.files is set to
> > /opencoral/build-rhel4/sql/storedProcedu
> >
>
res/accmgr/accounting_summary_source.sql:/opencoral/build-rhel4/sql/storedProcedu
> >
>
res/accmgr/load_rates_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accm
> >
>
gr/raw_accounting_source.sql:/opencoral/build-rhel4/sql/storedProcedures/accmgr/u
> > sage_summary_source.sql.
> > fileset: Setup scanner in dir
> > /opencoral/build-rhel4/sql/storedProcedures/accmgr
> > with patternSet{ includes: [*.sql] excludes: [] }
> > [antcall] Exiting /opencoral/build.xml.
> >
> > BUILD FAILED
> > /opencoral/build.xml:1571: The following error
> > occurred while executing
> > this line
> > :
> > /opencoral/build.xml:1594: Source file or resource
> > collection,
> > transactions or sq
> > l statement must be set!
> > at
> >
>
org.apache.tools.ant.ProjectHelper.addLocationToBuildException(Project
> > Helper.java:541)
> > at
> >
>
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:418)
> > at
> >
>
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> > ava:39)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
>
org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:62)
> > at
> >
>
net.sf.antcontrib.logic.ForEach.executeSequential(Unknown
> > Source)
> > at
> > net.sf.antcontrib.logic.ForEach.execute(Unknown
> > Source)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
> org.apache.tools.ant.Target.execute(Target.java:357)
> > at
> >
>
org.apache.tools.ant.Target.performTasks(Target.java:385)
> > at
> >
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
> > at
> >
>
org.apache.tools.ant.Project.executeTarget(Project.java:1298)
> > at
> >
>
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExec
> > utor.java:41)
> > at
> >
>
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
> > at
> > org.apache.tools.ant.Main.runBuild(Main.java:698)
> > at
> > org.apache.tools.ant.Main.startAnt(Main.java:199)
> > at
> >
>
org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
> > at
> >
>
org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
> > Caused by: /opencoral/build.xml:1594: Source file
> or
> > resource
> > collection, transac
> > tions or sql statement must be set!
> > at
> >
>
org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:390)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
>
org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:62)
> > at
> > net.sf.antcontrib.logic.IfTask.execute(Unknown
> > Source)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> > ava:39)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> >
>
org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:134)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
> org.apache.tools.ant.Target.execute(Target.java:357)
> > at
> >
>
org.apache.tools.ant.Target.performTasks(Target.java:385)
> > at
> >
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
> > at
> >
>
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleC
> > heckExecutor.java:38)
> > at
> >
>
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
> > at
> >
>
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
> > ... 26 more
> > --- Nested Exception ---
> > /opencoral/build.xml:1594: Source file or resource
> > collection,
> > transactions or sq
> > l statement must be set!
> > at
> >
>
org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:390)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
>
org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:62)
> > at
> > net.sf.antcontrib.logic.IfTask.execute(Unknown
> > Source)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> > ava:39)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> >
>
org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:134)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
> org.apache.tools.ant.Target.execute(Target.java:357)
> > at
> >
>
org.apache.tools.ant.Target.performTasks(Target.java:385)
> > at
> >
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
> > at
> >
>
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleC
> > heckExecutor.java:38)
> > at
> >
>
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
> > at
> >
>
org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
> > at
> >
>
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> > ava:39)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
>
org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:62)
> > at
> >
>
net.sf.antcontrib.logic.ForEach.executeSequential(Unknown
> > Source)
> > at
> > net.sf.antcontrib.logic.ForEach.execute(Unknown
> > Source)
> > at
> >
>
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > at
> >
> sun.reflect.GeneratedMethodAccessor2.invoke(Unknown
> > Source)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> > orImpl.java:25)
> > at
> > java.lang.reflect.Method.invoke(Method.java:585)
> > at
> >
>
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java
> > :105)
> > at
> > org.apache.tools.ant.Task.perform(Task.java:348)
> > at
> >
> org.apache.tools.ant.Target.execute(Target.java:357)
> > at
> >
>
org.apache.tools.ant.Target.performTasks(Target.java:385)
> > at
> >
>
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
> > at
> >
>
org.apache.tools.ant.Project.executeTarget(Project.java:1298)
> > at
> >
>
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExec
> > utor.java:41)
> > at
> >
>
org.apache.tools.ant.Project.executeTargets(Project.java:1181)
> > at
> > org.apache.tools.ant.Main.runBuild(Main.java:698)
> > at
> > org.apache.tools.ant.Main.startAnt(Main.java:199)
> > at
> >
>
org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
> > at
> >
>
org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
> >
> > Total time: 5 seconds
> >
> > So, it looks, based on my pathcovert ${new.files}
> > property that it
> > thinks that the fileset should contain 4 files.
> > But, I still seem to be
> > generating an error when I try to load that
> fileset
> > as a "refid" fileset.
> >
> > Any insights or further tests .... or cleaner ways
> > of testing for a
> > non-empty fileset .... would be greatly
> appreciated.
> >
> > Thanks,
> >
> > John
> >
> >
> >
> >
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > For additional commands, e-mail:
> > [EMAIL PROTECTED]
> >
> >
>
>
>
>
>
____________________________________________________________________________________
> Never miss a thing. Make Yahoo your home page.
> http://www.yahoo.com/r/hs
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
>
>
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now.
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]