Skip to main content



      Home
Home » Eclipse Projects » Memory Analyzer » OQL: calling Java methods
OQL: calling Java methods [message #544588] Sun, 04 July 2010 10:09 Go to next message
Eclipse UserFriend
The help system states that it's possible to call methods through reflection

Quote:

Calling Java methods

[ <alias> . ] @<method>( [ <expression>, <expression> ] ) ...

Adding ( ) forces OQL to interpret this as a Java method call. The call is executed via reflection. Common Java methods.



But I can't get it working. For example, this is the result when trying to call getTime() from the java.util.Date

Quote:

Executed Query:
SELECT d.@getTime() FROM java.util.Date d

Problem reported:
Method getTime not found in object java.util.Date [id=0x647cd5e8]



The same happens with all methods that don't belong to the java.lang.Object class.

Am I doing something wrong or is this feature not supported yet?

Thx!

Re: OQL: calling Java methods [message #544739 is a reply to message #544588] Mon, 05 July 2010 07:55 Go to previous message
Eclipse UserFriend
It doesn't work like that - the methods are on the MAT objects representing the objects or classes in the dump, not your actual methods in your program.

E.g.
IObject is the interface giving access to the MAT view of any object in the dump.

IClass is the interface giving access to the MAT view of any class in the dump.

See the API doc -
help -> reference -> API Reference
to see the methods on IClass, IObject etc.

Try:
SELECT d.getObjectId() FROM java.util.Date d

SELECT toHex(d.getObjectAddress()) FROM java.util.Date d

We should improve the help and provide links to the API doc.



Previous Topic:Memory Analyzer Forum Moved
Next Topic:Updated Memory Analyzer on IBM Support Assistant and new DTFJ
Goto Forum:
  


Current Time: Wed Jul 16 04:16:23 EDT 2025

Powered by FUDForum. Page generated in 0.06267 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top