This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 75902 - JSP debugging unusable
Summary: JSP debugging unusable
Status: VERIFIED FIXED
Alias: None
Product: debugger
Classification: Unclassified
Component: Code (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Martin Entlicher
URL:
Keywords: REGRESSION
Depends on:
Blocks:
 
Reported: 2006-05-04 10:05 UTC by Jiri Skrivanek
Modified: 2007-03-13 19:18 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jiri Skrivanek 2006-05-04 10:05:36 UTC
JSP debugging is almost unusable after implementation of enhancement #50761
(i.e. from build 20060503-0857). The problem appears only when you add
breakpoint during debugging. If breakpoint exists before debugger is started it
works well. To reproduce:

- create web application from template
- start debugger (F5) and wait until index.jsp appears in browser
- add breakpoint to index.jsp (e.g. line 22)
- reload page in browser. Debugger Console writes "Breakpoint reached at line 57
in index.jsp by thread http-8084-Processor22." but there is no green line marker
and windows Watches, Local Variables and Call Stack show "Please, wait" node or
are empty. Continue action does nothing.

Build 20060503-0857, JDK1.5.0_06, WindowsXP.
Comment 1 Martin Entlicher 2006-05-04 11:31:22 UTC
Reproduced, starting to work on it...
Comment 2 Martin Entlicher 2006-05-04 15:04:51 UTC
The problem is in this thread, which does not finish:

"Debugger operator thread" daemon prio=10 tid=0x09351000 nid=0x10ef in
Object.wait() [0xa5eb3000..0xa5eb3e40]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at org.openide.util.Task.waitFinished(Task.java:129)
        - locked <0xab725ab0> (a org.openide.util.RequestProcessor$Task)
        at
org.openide.util.RequestProcessor$Task.waitFinished(RequestProcessor.java:746)
        at org.openide.util.Task.waitFinished(Task.java:159)
        at
org.netbeans.api.debugger.DebuggerManager.startDebugging(DebuggerManager.java:332)
        at
org.netbeans.modules.debugger.jpda.JPDADebuggerImpl.checkJSR45Languages(JPDADebuggerImpl.java:1080)
        at
org.netbeans.modules.debugger.jpda.JPDADebuggerImpl.setStoppedState(JPDADebuggerImpl.java:802)
        - locked <0xab67faa8> (a java.lang.Object)
        at
org.netbeans.modules.debugger.jpda.breakpoints.BreakpointImpl.perform(BreakpointImpl.java:227)
        at
org.netbeans.modules.debugger.jpda.breakpoints.LineBreakpointImpl.exec(LineBreakpointImpl.java:158)
        at org.netbeans.modules.debugger.jpda.util.Operator$1.run(Operator.java:194)
        at java.lang.Thread.run(Thread.java:626)

It's caused by StartActionProvider.postAction(), which does not call
actionPerformedNotifier.run() in one case.
Comment 3 Martin Entlicher 2006-05-04 15:06:22 UTC
Fixed in trunk:

/cvs/debuggerjpda/src/org/netbeans/modules/debugger/jpda/actions/StartActionProvider.java,v
 <--  StartActionProvider.java
new revision: 1.23; previous revision: 1.22
Comment 4 Jiri Skrivanek 2006-05-05 08:39:23 UTC
Verified in build 20060504-1526.