[prev in list] [next in list] [prev in thread] [next in thread] 

List:       groovy-dev
Subject:    AntBuilder.java (bug and fix)
From:       Henry Chan <q8e192 () gmail ! com>
Date:       2005-04-18 17:23:31
Message-ID: 816661dd050418102318476a79 () mail ! gmail ! com
[Download RAW message or body]

Under the method:

protected void setBeanProperty(Object object, String name, Object value)

the first line reads:
 if (log.isLoggable(Level.FINE)) {
            log.fine("Setting bean property on: " + object + " name: "
+ name + " v
alue: " + value);
        }

FYI ... the log statement will throw an Exception in some cases
(espeicially for fileset)
Specifially object.toString() throws something like:
No directory specified for fileset.
        at org.apache.tools.ant.types.AbstractFileSet.getDirectoryScanner(A=
bstractFileSet.java:337)
        at org.apache.tools.ant.types.AbstractFileSet.toString(AbstractFile=
Set.java:663)
        at groovy.util.AntBuilder.setBeanProperties(AntBuilder.java:347)
        at groovy.util.AntBuilder.createNode(AntBuilder.java:258)
        at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:12=
0)
        at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:86)
        at org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:16=
3)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHe=
lper.java:104)
        at groovy.lang.Closure.invokeMethod(Closure.java:143)


The fix is to take out object from the log line or simply log
object.getClass().getName()

Cheers,
Henry

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic