Simuler une touche en Java

Je suis à la recherche de simuler l'action de la tenue d'une touche du clavier vers le bas pour une courte période de temps en Java. Je m'attends à ce que le code suivant, maintenez la touche pendant 5 secondes, mais il ne se presse une fois (pour produire un seul "a", lors de l'essai dans le bloc-notes). Aucune idée si j'ai besoin d'utiliser quelque chose d'autre, ou si je suis juste à l'aide de l'awt.Robot de classe mal ici?

Robot robot = null; 
robot = new Robot();
robot.keyPress(KeyEvent.VK_A);
Thread.sleep(5000);
robot.keyRelease(KeyEvent.VK_A);

OriginalL'auteur Ross | 2009-04-24