Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2027806 | 1.4.0 | Tim Bell | P5 | Resolved | Fixed | beta |
Name: sg39081 Date: 06/28/99
If in jdb, I type
stop in some.interface.some.method
e.g.
stop in java.util.Observer.update
JDB throws an InternalError exception as follows:
[Internal debug-agent exception: java.lang.InternalError: JVMDI_ERROR_INVALID_ME
THODID - during command processing]Internal exception:
java.lang.Exception: java.lang.InternalError: JVMDI_ERROR_INVALID_METHODID
at sun.tools.debug.RemoteAgent.getReply(Compiled Code)
at sun.tools.debug.RemoteAgent.setBreakpointMethod(RemoteAgent.java:1216
)
at sun.tools.debug.RemoteClass.setBreakpointMethod(RemoteClass.java:379)
at sun.tools.ttydebug.TTY.stop(TTY.java:976)
at sun.tools.ttydebug.TTY.executeCommand(TTY.java:1587)
at sun.tools.ttydebug.TTY.<init>(Compiled Code)
at sun.tools.ttydebug.TTY.main(Compiled Code)
I believe it would be better if JDB said something like
"java.util.Observer is an interface not a class" instead of
throwing an exception.
(Review ID: 84107)
======================================================================
tim.bell@Eng 2000-08-10
The same basic problem exists with the new re-hosted JDB, where
you will see an error like the following:
% jdb BreakInInterfaceMethod
Initializing jdb...
> stop in java.util.Observer.update
Deferring breakpoint java.util.Observer.update.
It will be set after the class is loaded.
> run
run BreakInInterfaceMethod
VM Started: > java.lang.NullPointerException
at com.sun.tools.jdi.MirrorImpl.validateMirror(MirrorImpl.java:52)
at com.sun.tools.jdi.EventRequestManagerImpl.createBreakpointRequest(EventRequestManagerImpl.java:621)
at com.sun.tools.example.debug.tty.BreakpointSpec.resolveEventRequest(BreakpointSpec.java:81)
at com.sun.tools.example.debug.tty.EventRequestSpec.resolve(EventRequestSpec.java:76)
at com.sun.tools.example.debug.tty.EventRequestSpecList.resolve(EventRequestSpecList.java:75)
at com.sun.tools.example.debug.tty.EventHandler.classPrepareEvent(EventHandler.java:249)
at com.sun.tools.example.debug.tty.EventHandler.handleEvent(EventHandler.java:121)
at com.sun.tools.example.debug.tty.EventHandler.run(EventHandler.java:83)
at java.lang.Thread.run(Thread.java:488)
- backported by
-
JDK-2027806 TTY: jdb throws InternalError when setting breakpoint in an interface method
-
- Resolved
-