Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [Java]Invio e Ricezione costante di Oggetti tra Server e Socket

    Ciao a tutti...
    Sono ormai settimane che sto cercando disperatamente di creare un programma che a pensarlo sembra banalissimo ma che nel realizzarlo sto avendo non pochi problemi...
    Dopo aver creato un programma di messaggistica tra 2 o più utenti che comunicavano attraverso un server, inviandosi delle Stringhe per i messaggi, devo realizzare un programma dove i client non si scambiano informazioni attraverso semplici Stringhe, ma un oggetto più complesso...
    Navigando sulla rete, ho scoperto che si devono usare gli oggetti ObjectOutputStream e ObjectInputStream per la ricezione e l'invio dell'oggetto.. Creata la comunicazione tra client e server, riesco anche a far inviare e ricevere gli oggetti tra i 2.. Il mio più grande problema è che il flusso deve essere costante, non mi si deve chiudere la comunicazione; quindi il server deve rimanere sempre pronto ad accettare nuovi oggetti quando il client glieli invia..
    Per questo viene messo il tutto in un Thread che con un loop desiderato rimane sempre in attesa.

    Tutta questa comunicazione funziona ma solo per pochi cicli perchè dopo pocho il flusso diventa troppo pesante per la rete e blocca il tutto...

    Premetto che l'oggetto da inviare è stato implentato a SERIALIZABLE..
    Premetto anche che la mia soluzione non è quella di trasformare l'oggetto in una stringa e lavorarla successivamente quando viene ricevuta...

    Vi prego Help!!!
    Grazie 1000 in anticipo...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466

    Moderazione

    Il linguaggio Java ha una sezione dedicata.
    Sposto la discussione.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: [Java]Invio e Ricezione costante di Oggetti tra Server e Socket

    Originariamente inviato da Vito91
    Vi prego Help!!!
    Grazie 1000 in anticipo...
    Beh, senza vedere come hai implementato la cosa è difficile tirare a indovinare...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #4
    Codice per ricevere dal server o dal Client messo appositamente in un Thread
    Codice PHP:
    while(true){ 
                    try {    
    //c = Socket Client
                      
    in = new ObjectInputStream(c.getServer().getInputStream());     
                   
    Object letto in.readObject();  
                       
    System.out.println("RICEVUTO: "+letto); 
      } catch (
    IOException ex) {                     Logger.getLogger(Server.class.getName()).log(Level.SEVEREnullex);                 } catch (ClassNotFoundException ex) {                     Logger.getLogger(Server.class.getName()).log(Level.SEVEREnullex);                 }         } 

    Metodo del Client per inviare oggetti al ServerSocket
    Codice PHP:

                
    try{
    //Server = ServerSocket
                    
    ObjectOutputStream out=new ObjectOutputStream (Server.getOutputStream());
                    
    out.writeObject(o);

    //                out.flush();
    //                out.close();
                
    }catch(Exception e){
                    
    System.err.println("Errore Server: "+e);
                } 

  5. #5
    Risolto!!!
    I codici erano perfettamente funzionanti.. Il mio unico problema era che siccome erano delle prove facevo andare solo il Thread per inviare da Client, ricevere e Inviare da Server, ma non quello per ricevere da il Client... Così facendo la rete rimaneva piena di oggetti e bloccava il tutto..

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.