Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446

    [Java]Errore esecuzione programma

    Salve a tutti,seguendo un sorgente già esistente ho creato una piccola chat,volevo poi inserire il comando per la systray(ambiente windows)e unendo un altro sorgente dopo un po' di cazzeggio sono riuscito a far convivere i due codici,e devo dire perfettamente...SOLO che adesso la chat nn invia più il messaggio , mi spiego meglio.Appena lo avvio il programma si riduce alla systray,dopo col comando show mostra la finestra in cui posso scrivere la frase(premetto che la connessione al server riesce perfettamente)però quando tento di inviare un messaggio, dalla finestra del dos vedo questo messaggio:

    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at ChatClient.SendString(ChatClient.java:34)
    at ChatFrame.handleEvent(ChatClient.java:173)
    at java.awt.Window.postEvent(Window.java:1783)
    at java.awt.Component.postEvent(Component.java:4250)
    at java.awt.Component.postEvent(Component.java:4250)
    at java.awt.Component.postEvent(Component.java:4250)
    at java.awt.Component.postEvent(Component.java:4250)
    at java.awt.Component.dispatchEventImpl(Component.jav a:3971)
    at java.awt.Component.dispatchEvent(Component.java:38 03)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java: 463)
    at java.awt.EventDispatchThread.pumpOneEventForHierar chy(EventDisp
    read.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispat
    ad.java:163)
    at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.jav

    at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.jav

    at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:110)


    Aiuti?!Vorrei postare l'intero codice ma sono più files...molti files...

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Non serve tutto il codice. Se osservi lo StackTrace, vedrai che è sufficiente controllare la linea 34 del file ChatClient.java (che è all'interno del metodo SendString).

    Se vuoi un aiuto dal Forum devi, quantomeno, postare una porzione di codice in modo da poterci permettere di capire dov'è l'errore. Posta, quindi, il metodo SendString (o almeno una piccola parte del blocco di codice attorno alla linea 34 del file che lo contiene).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    public class ChatClient extends Thread {
    protected ObjectInputStream iObjStrem;
    protected ObjectOutputStream oObjStream;

    protected ChatFrame frame ;
    protected Socket server ;

    public ChatClient (String title, Socket s)
    throws IOException {
    super(title) ;
    server = s ;
    frame = newFrame(title, this);
    }

    protected ChatFrame newFrame(String title, ChatClient cc) {
    return new ChatFrame(title,cc) ;
    }
    //LA LINEA 34 è oObjStream.writeObject( s );
    public void SendString( String s ) throws IOException {
    oObjStream.writeObject( s ) ;
    }

    public void run () {
    try {
    iObjStrem = new ObjectInputStream(server.getInputStream());
    oObjStream = new ObjectOutputStream(server.getOutputStream());
    frame.show ();

    while (true) {
    String line = (String)iObjStrem.readObject();
    frame.AddText(line);
    }
    } catch (Exception ex) {
    ex.printStackTrace ();
    } finally {
    try {
    server.close ();
    System.out.println( "Connessione col server persa, disconnesso..." ) ;
    frame.dispose() ;
    System.exit(1);
    } catch (IOException ex) {
    ex.printStackTrace ();
    }
    }
    }

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Bene.
    Ora devi capire perchè l'oggetto oObjStream è nullo.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    e se nn ne avessi la più pallida idea? :maLOL:

  6. #6
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    allora,allora...ho capito che il funzionamento del programma dipende da dove metto:
    systray();

    se lo scrivo il programma nn invia il messaggio,se invece non lo scrivo il programma funziona ma nn và nella systray...
    Aiuti?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.