JDK-6949421 : JProgressBar not filled after upgrading from JRE 1.6.0_17 to JDK 1.6.0_18
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.swing
  • Affected Version: 6u10
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2010-05-04
  • Updated: 2011-02-16
  • Resolved: 2010-05-21
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
1.6.0_18

ADDITIONAL OS VERSION INFORMATION :
Windows XP SP3

A DESCRIPTION OF THE PROBLEM :
Exactly the same .JAR file, displays JProgressBar OK when run under JRE 1.6.0_17, but no bar fill is visible when the JRE is replaced by the JRE from JDK 1.6.0_18

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
install JDK 1.6.0_18 and run an JAR containing JProgressBar

ACTUAL -
JProgressBar is not filled, independent of L&F

ERROR MESSAGES/STACK TRACES THAT OCCUR :
no MSGs

REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------

    private javax.swing.JProgressBar jProgressBar1;
        jProgressBar1 = new javax.swing.JProgressBar();
                            jProgressBar1.setValue(progressOnQueue);

---------- END SOURCE ----------

CUSTOMER SUBMITTED WORKAROUND :
remove JRE 1.6.0_18 using Add / Remove program in WinXP
RTE level then falls back to JRE 1.6.0_17

Release Regression From : 6u17
The above release value was the last known release where this 
bug was not reproducible. Since then there has been a regression.

Comments
EVALUATION The progress bars per se work properly, the problem seems to be with underlying SwingWorker machinery. Console output looks pretty different between 6u17 and 6u18: 6u17b04, progress bars visible: ------------------------------- globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =STARTED globalBackgroundWorkerQueue.getState()=STARTED 6u18b07, progress bars invisible: --------------------------------- globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED globalShowProgress.getState() =PENDING globalBackgroundWorkerQueue.getState()=STARTED
21-05-2010

EVALUATION This may be related to the Nimbus changes
14-05-2010