Skip to main content

Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Memory Analyzer » OQL: calling Java methods
OQL: calling Java methods [message #564948] Sun, 04 July 2010 14:09 Go to next message
Simeon Zverinski is currently offline Simeon ZverinskiFriend
Messages: 2
Registered: July 2009
Junior Member
The help system states that it's possible to call methods through reflection

> 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

> 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?

Re: OQL: calling Java methods [message #564977 is a reply to message #564948] Mon, 05 July 2010 11:55 Go to previous messageGo to next message
Andrew Johnson is currently offline Andrew JohnsonFriend
Messages: 167
Registered: July 2009
Senior Member
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.

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.

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.
Re: OQL: calling Java methods [message #1064336 is a reply to message #564977] Tue, 18 June 2013 19:15 Go to previous message
Robin Salkeld is currently offline Robin SalkeldFriend
Messages: 8
Registered: June 2013
Junior Member
Hello all,

I know this is an old thread, but I just thought I'd mention that I've actually implemented the ability to invoke the methods in the problem your heap dump is from. It's still in progress (and has taken a long time!) but so far it seems to work very well with a few caveats.

I'm curious as to the context of your original question. What kind of heap dump analysis were you trying to write?

Previous Topic:Memory analyzer not opening hprof
Next Topic:Displaying field/attribute names in Dominator Tree
Goto Forum:

Current Time: Fri Jan 22 16:36:41 GMT 2021

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

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

Back to the top