tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
823
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DeinGewissen DeinGewissen ist offline Grünschnabel
    Registriert seit
    Jan 2010
    Beiträge
    2
    Hallo,

    ich entwickele zur Zeit an einer JSP Webanwendung, von der aus die Anwender Daten zu einer Datenbank hinzufügen können. Diese Datensätze enthalten Texte die zu bestimmten Zeiten (die ebenfalls vom Anwender frei gewählt werden können) verschickt werden sollen.

    So nun zu dem Problem vor dem ich gerade stehe: Und zwar handelt es sich dabei um das automatische Verschicken zum gewählten Zeitpunkt.

    Ich habe folgenden Timer initialisiert:

    Versenden ist der Versandzeitpunkt in Millisekunden.
    Code :
    1
    2
    3
    4
    
       ....
         Timer timer = new Timer();
          timer.schedule  ( new Task(), versenden );
    ....

    Die Klasse Task beginnt folgendermaßen:
    Code :
    1
    2
    3
    4
    5
    6
    
    import java.util.*;
     
    class Task   extends TimerTask  
    {
        public void run()  
      {...

    Nun würde ich der Klasse Task gerne eine Nachrichten ID (String) übergeben, damit diese weiß welche Nachricht sie verschicken soll.
    Aber nach diversem Ausprobieren und googeln habe ich bisher nur die Antwort gefunden, dass man wohl keine Variablen an eine Timerklasse übergeben kann. Stimmt das?

    Mir fällt auch zur Zeit nicht ein wie ich dem Timer sonst klar machen könnte zu welcher Nachricht er gehört
    Da auch mehrere Timer gleichzeitig laufen können, wenn z.B. mehrere Nachrichten zur selben Zeit verschickt werden sollen.

    Ich hoffe ihr könnt mir helfen.
     

  2. #2
    CPoly CPoly ist offline Mitglied Weizenbier
    tutorials.de Premium-User
    Registriert seit
    Sep 2009
    Beiträge
    2.445
    Kannst du nicht im Konstruktor von Task einen Wert übergeben?
     

  3. #3
    DeinGewissen DeinGewissen ist offline Grünschnabel
    Registriert seit
    Jan 2010
    Beiträge
    2
    Da hat mein Netbeasns gemeckert, dass das in diesem Fall wohl nicht möglich ist.
     

  4. #4
    CPoly CPoly ist offline Mitglied Weizenbier
    tutorials.de Premium-User
    Registriert seit
    Sep 2009
    Beiträge
    2.445
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    public class Task extends TimerTask
    {
        private String id;
     
        public Task(String id)
        {
            this.id = id;
        }
     
        public void run()
        {
            System.out.println(id);
        }
    }

    Code java:
    1
    2
    
    Timer timer = new Timer();
    timer.schedule(new Task("hallo"), 3000);

    Gibt nach 3 Sekunden "hallo" aus.
     

  5. #5
    SlevinKelevra Tutorials.de Gastzugang
    Möchte dein Konzept icht über den haufen werden, aber du hast dann evtl. 1000 Timer laufen!

    Starte lieber einen EJB3 Timer der alle X Minute/Sekunden/Stunden eine Abfrage auf der DB ausführt und sich alle Datensätze geben lässt, die "Reif" zum verschicken sind.
     

Ähnliche Themen

  1. [primeFaces] customizing schedule - Komponente
    Von Bexx im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 0
    Letzter Beitrag: 10.05.10, 14:56
  2. Synchronied Schedule in Eclipse ausschalten
    Von karstenkurt im Forum Coders Talk
    Antworten: 0
    Letzter Beitrag: 06.08.08, 09:23
  3. TimerTask und Schedule Problem
    Von DragQueenMum im Forum Java
    Antworten: 2
    Letzter Beitrag: 25.11.07, 18:40
  4. TextBox auslesen und Wert an Timer übergeben
    Von AirsoftDivisionHRO im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 20.11.07, 18:04
  5. Antworten: 1
    Letzter Beitrag: 18.09.07, 14:44