You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by robert burrell donkin <ro...@mac.com> on 2002/07/17 19:34:49 UTC

[digester] CallMethodRule bug

at the moment:

1. the java doc comments have always said that methods with primitive arg 
could be called by passing in corresponding java.lang classes (eg. Boolean)
.
2. this doesn't work!
3. CallMethodRule uses invokeExactMethod (rather than invokeMethod)


invokeExactMethod uses class.getMethod. in order to support matching 
primitives with java.lang classes, this would need to work more like 
invokeMethod. i'd prefer to change invokeMethod so that it supports this 
kind of matching and change CallMethodRule to use invokeMethod by default 
and invokeExactMethod with a flag.

this may subtly break some digestion rulesets (since invokeMethod may 
under some rare circumstances return a different match from 
invokeExactMethod) which will have to be fixed by setting flags on some 
CallMethodRules. we didn't have any complaints from users when we made 
this change for other rules so i'm pretty confident that the 
incompatibility doesn't occur often in the wild.

is this a good plan?

comments?

- robert


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