Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    21

    Java e apllicazione client server

    Ciao a tutti, volevo un aiuto devo realizzare una applicazione client server con protocollo udp con ack. Il client ed il server girano sulla stessa macchina
    Grazie anticipatamnete

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    credo che nessuno potrà darti risposta: così come l'hai messa, sembra che tu stia cercando qualcuno che ti scriva il programma da 0... comincia col postare codice di tuo pugno e a dire che problemi hai incontrato. Se il problema è partire, leggi una guida o contatta il tuo professore/insegnante/committente.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    "protocollo udp con ack"? Che significa?
    Rilasciata Python FTP Server library 0.5.1
    http://code.google.com/p/pyftpdlib/

    We'll be those who'll make the italian folks know how difficult can be defecating in Southern California without having the crap flying all around the house.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    21

    Aiuto applicazione client/server

    Visto che sono stato poco chiaro ora mi spiego questo è il codice del client realizzato da me
    codice:
    import java.io.*;
    import java.net.*;
    
    public class UDPClient {
        static final int PORT= 2200;
      static final int bufLen = 512;
      static final PrintStream dspl = System.out;
    
      
      public static void main(String[] argv){
        try {
          
          InetAddress serverAddress = InetAddress.getLocalHost();
          DatagramSocket UDPsocket = new DatagramSocket();
          
          BufferedReader uin = new BufferedReader(
                            new InputStreamReader(System.in));
         
          byte[] outBuffer;
          byte[] inBuffer = new byte[bufLen];
          DatagramPacket outDatagram;
          DatagramPacket inDatagram = new DatagramPacket(inBuffer,inBuffer.length);
          String cmd;
          int cnt = 0;
          do {
            
            cmd = cnt+" <"+uin.readLine()+">";
            cnt++;
            outBuffer = cmd.getBytes();
            outDatagram = new DatagramPacket(outBuffer,outBuffer.length,
                          serverAddress,PORT);
            dspl.println(new String(outDatagram.getData()));
            UDPsocket.send(outDatagram);
            try {
              inDatagram.setLength(inBuffer.length);
              UDPsocket.receive(inDatagram);
              dspl.println("ack: "+
                  new String(inDatagram.getData(),0,inDatagram.getLength()));
            }
            catch(InterruptedIOException e) {
              dspl.println("Timeout attesa ack!");
            }
          } while(!cmd.endsWith("<quit>")); /* fine interazione */
        }
        catch(IOException e) {
          e.printStackTrace();
        }
      }
    }
    import java.io.*;
    import java.net.*;
    import java.util.Date;
    
    public class UDPServer {
       static final int PORT= 2200;
       static final int bufLen = 512;
     
      static final PrintStream dspl = System.out;
    
     
     
     
      public static void main(String[] argv){
        try {
     
          DatagramSocket UDPsocket = new DatagramSocket(PORT);
           String localAddress = InetAddress.getLocalHost().getHostName().trim();
           int localPort = UDPsocket.getLocalPort();
          dspl.println(localAddress+"["+localPort+"] LISTEN");
     
    
          byte[] outBuffer;
          byte[] inBuffer = new byte[bufLen];
    
     
          DatagramPacket outDatagram;
          DatagramPacket inDatagram = new DatagramPacket(inBuffer,inBuffer.length);
    
     
          String data;
          do {
     
     
            inDatagram.setLength(inBuffer.length);
     
            UDPsocket.receive(inDatagram);
            InetAddress destAddress = inDatagram.getAddress();
            String destHost = destAddress.getHostName().trim();
            int destPort = inDatagram.getPort();
            dspl.print("> "+destHost+"["+destPort+"] : ");
            data = new String(inDatagram.getData(),0,inDatagram.getLength());
            dspl.println(data);
    
            String ack = new Date().toString() + " rcv: " +data;
            outBuffer = ack.getBytes();
            outDatagram = new DatagramPacket(outBuffer,outBuffer.length,
                            destAddress,destPort);
            UDPsocket.send(outDatagram);
          } while(!data.endsWith("<quit>")); 
        }
        catch(IOException e) {
          e.printStackTrace();
        }
      }
    }
    ma non riesco a farli comunicare il server sta in ascolto alla porta ma il client non comunica.
    l'errore che mi da netbeans è

    Cannot assign requested address: Datagram send failed

    Spero di essere stato chiaro. client e server girano sullo stesso pc

  5. #5
    ciao, ti informo che nel titolo bisogna sempre specificare il lingusaggio di prog.
    ...Terrible warlords, good warlords, and an english song

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

    Moderazione

    Originariamente inviato da pemanu
    Visto che sono stato poco chiaro ora mi spiego questo è il codice del client realizzato da me
    Volevo segnalare che ho provveduto a "fondere" la discussione che hai aperto con quella precedentemente avviata sullo stesso argomento.

    Ad ogni argomento, una sola discussione.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

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.