Name: gm110360 Date: 06/02/2004
FULL PRODUCT VERSION :
java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b51)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b51, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Windows XP Pro 32 bit +Service Pack 1
A DESCRIPTION OF THE PROBLEM :
I used javax.swing.timer and added ActionListener. After that I started timer and counted "ticks" of this timer. Everything goes well untill I change the system time (for example it's 5:00 and I set 4:23). After increasing time nothing happens but after decreasing it - timer stops - it just doesn't notify the action listener - actionPerformed method isn't called.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Define javax.swing.timer, add ActionListener, start timer, change time for the lower one and that's it.
EXPECTED VERSUS ACTUAL BEHAVIOR :
actionPerformed method is still called
actionPerformed method isn't called any longer
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
public class TimerTest
public static void main(String args)
Tester tester = new Tester();
class Tester extends Frame
Timer t = new Timer(100, new
int i = 0;
public void actionPerformed(ActionEvent e)
System.out.println("i=: " + i++);
t.start(); //this te beggining and the end
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Using own timer constructed with Thread but it's not very good solution.
(Incident Review ID: 275579)