Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    [JAVA] gestione evento in un metodo

    Dunque ho una classe con un metodo che quando viene chiamato deve fare questo:

    -aspetta un certo evento
    -return una stringa

    Questo evento è generato da un'altra classe, in particolare da una servlet.
    La struttura dell'applicazione è questa:

    servlet - classe con metodo che aspetta evento(la chiamiamo dispatcher) - altra_classe

    altra_classe chiama il metodo di dispatcher, quest' ultima aspetta l'evento. Quando l'utente tramite la servlet genera l'evento allora il dispatcher avverte altra_classe la quale magari stampa qualcosa in output.

    Ho cominciato a vedere Observer ma non riesco a capire come incastrarlo in questa applicazione.
    Listen the noise of deep sea......
    --Powered by Debian GNU/Linux Sid on 2.6.12.3--
    albz.altervista.org

  2. #2
    Ah dimenticavo, la difficoltà che incontro è dovuta al fatto che non posso istanziare tutto direttamente: in pratica non ho una classe Main che istanzia sia l'observer che l'observable. Ovvero altra_classe è una applicazione standalone (la lancio per conto suo), mentre la servlet per definizione viene istanziata all'occorrenza...
    Listen the noise of deep sea......
    --Powered by Debian GNU/Linux Sid on 2.6.12.3--
    albz.altervista.org

  3. #3
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    io farei così
    codice:
    class MyListener implements HttpSessionAttributeListener {
      public void attributeAdded(HttpSessionBindingEvent se) {
        // nuovo attributo
        if (se.getName().equals("evento da aspettare")) {
          // vedi tu
        }
      }
      public void attributeRemoved(HttpSessionBindingEvent se) {}
      public void attributeReplaced(HttpSessionBindingEvent se) {}
    }
    così per generare l'evento basta fare
    codice:
    session.setAttribute("evento da aspettare", "valore");

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    La classe che lanci per seconda pero puo sempre istanziare un oggetto della prima o no? Prova a servirti di delle interfacce che tieni in entrambe le applicazioni, e usa l'operatore this, se c'è ne fosse bisogno quando effettui la registrazione


    Ah dimenticavo, la difficoltà che incontro è dovuta al fatto che non posso istanziare tutto direttamente: in pratica non ho una classe Main che istanzia sia l'observer che l'observable. Ovvero altra_classe è una applicazione standalone (la lancio per conto suo), mentre la servlet per definizione viene istanziata all'occorrenza...

  5. #5
    Ok in questo modo mi sembra di capire che posso far generare alla servlet l'evento. Come faccio però a catturarlo da un'altra applicazione...non mi serve un riferimento alla sessione? Il fatto è che se altra_classe viene avviata per i fatti suoi non ho riferiementi all'oggetto sul quale sincronizzarsi...
    Listen the noise of deep sea......
    --Powered by Debian GNU/Linux Sid on 2.6.12.3--
    albz.altervista.org

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    le istanze sono nella stessa jvm?

  7. #7
    Lucked si altra_classe potrebbe istanziare il dispatcher, ma a quel punto sarebbe la servlet a non avere il riferimento ad esso...
    Listen the noise of deep sea......
    --Powered by Debian GNU/Linux Sid on 2.6.12.3--
    albz.altervista.org

  8. #8
    floyd temo di non saperti rispondere...è tutto sulla stessa macchina, in particolare sarebbe deployato tutto sotto jboss. In realtà altra_classe è un webservice, una classe che espone un metodo (quello di interesse) che può essere chiamato da un client remoto.
    In pratica quando il client remoto richiede il servizio ad altra_classe, quest'ultima aspetta l'evento. L'evento a sua volta è scatenato da un utente tramite interfaccia web.
    Bel casino eh.... :master:
    Listen the noise of deep sea......
    --Powered by Debian GNU/Linux Sid on 2.6.12.3--
    albz.altervista.org

  9. #9
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    mah, i web services rispondono a richieste, non credo possano generare eventi
    forse devi usare rmi

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    prova a passargli il riferimento all'interfaccia che implementa i metodi di tuo interesse. Non so pero se si puo da 2 applicazioni diverse..fra l'altro tu vuoi metterle poi su computer diversi o è una mia impressione?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.