Charles Lee wrote:
Hi Nathan,
findMethod in the XMLDecoder is used for finding the invoke method in beans,
given the info from the beans xml file.
I have no idea about the logic to determine which method should be found.
(Finding the most specific method? Do not count static method?) Maybe we
need java beans spec on this.
Harmony is using Method.getMethods() to get all the methods from the beans
class. This is where drlvm and vme cause difference. drlvm will list static
method ahead of normal method, but vme list normal method first. It seems
harmony logic on findMethod is not order free, or it maybe suggest the
methods get from Method.getMethods() should be the same.
It should be fixed I think. But what is the correct logic of determine the
method to invoke on beans?
Hi Charles,
I saw your new patch on JIRA, the findMethod's behaviors are following now?
And some tests are commented, any reasons?
<code>
+ assertNotNull(o2);
+ /*
if (!o1.equals(o2)) {
System.out
.println("Loading object with static field, original xml: "
@@ -391,51 +417,49 @@ public class XMLDecoderTest extends TestCase {
+ o2.getV());
}
- assertEquals(o1, o2);
+ assertEquals(o1, o2);*/
</code>
--
Best Regards,
Regis.