The inclusion of variable info is controlled at compile time. Due to a small typo, variable info is missing in the current jars. I will open a bug for this.
Achim Huegen
Thanks for the answer. However, I guess I was not very clear about what I'm trying to accomplish. Let me be a bit more concise and give an example:
I want to debug Hivemind itself. Suppose I have a project running on Hivemind. I'm creating registry from a .sdl file (check the code below). I single step into RegistryBuilder.constructDefaultRegistry() (This, I can accomplish).
public void run() {
Registry registry = RegistryBuilder.constructDefaultRegistry();
Calculator c = (Calculator) registry.getService("com.kocbank.falez.onlineservers.hsmserver.Calculator", Calculator.class);
I step into the method and see the following in Eclipse. I can step through below lines. Wheee..
public static Registry constructDefaultRegistry() { ClassResolver resolver = new DefaultClassResolver(); RegistryBuilder builder = new RegistryBuilder();
builder.processModules(resolver);
However, when I try to inspect the resolver object created inside the function, Eclipse complains that 'resolver cannot be resolved' (yes, I compiled Hivemind with debug info).
I single step into builder.processModules(resolver); line. And see: public void processModules(ClassResolver resolver) { if (LOG.isDebugEnabled()) LOG.debug("Processing modules visible to " + resolver);
processModulesResources(resolver, HIVE_MODULE_SDL); processModulesResources(resolver, HIVE_MODULE_XML);
Which is nice. Here, I still can't inspect (or display) resolver object itself. Eclipse still complains that resolver cannot be resolved. However, in the variables pane, I can see resolver object's contents. But displayed as arg0. Not resolver.
In other libraries included in my project, take servlet-api for instance, I can inspect variables.
I guess this is a bit more clear. Appreciate any comments.
Regards, Bulent Erdemir
-----Original Message----- From: Howard Lewis Ship [mailto:[EMAIL PROTECTED] Sent: Sat 7/10/2004 5:16 AM To: [email protected] Subject: Re: Debugging Hivemind
I doubt you can debug the runtime-generated proxies. There's literally no Java source file to step through. That you can't iPut the breakpoints in your own code and don't worry about how you get there :-)
I'm working on a HiveMind-driven project right now, so as necessary I set break points in my code, i.e.:
Thread [PoolThread-0] (Suspended (breakpoint at line 31 in
ForumThreadDataSource))
ForumThreadDataSource.getThreadsInRange(int, int) line: 31
$Interceptor_fda6d35c7c_11.getThreadsInRange(int, int) line: not
available [local variables unavailable]
$InnerProxy_fda6d3590b_8.getThreadsInRange(int, int) line: not
available [local variables unavailable]
$SingletonProxy_fda6d358f7_7.getThreadsInRange(int, int) line: not
available [local variables unavailable]
ThreadSummaries$Enhance_51(ThreadList).prepareForRender(IRequestCycle) line: 57
ThreadSummaries$Enhance_51(AbstractComponent).render(IMarkupWriter,
IRequestCycle) line: 853
So I see what you mean; this is a Javassist issue, not a HiveMind issue.
Again, don't be concerned with the HiveMind proxies and interceptors, set your breakpoints in your own code.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
