Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    60

    domanda client-server socket

    Ho un problema di comunicazione client-server.
    Il client riceve la prima stringa con :
    socketIn = new Scanner(socket.getInputStream()); String stringa=in.nextLine(); System.out.println(stringa);
    e il server invia il server con :
    out = new PrintWriter(socket.getOutputStream()); out.println("pippo");out.flush;

    Il problema che riceve la prima stringa e la stampa correttamente poi però il server ne invia di successive e poi si blocca aspettando l'invio di istruzioni dal client, ma è come se non le ricevesse. Ha cosa può essere dovuto il problema (lavoro con eclipse) devo fare qualcosa sul client.??
    Questo il codice client:

    codice:
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.PrintStream;
    
    
    import java.io.PrintWriter;
    import java.net.Socket;
    import java.util.NoSuchElementException;
    import java.util.Scanner;
    import java.util.StringTokenizer;
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import java.io.*;
    import java.util.*;
    
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    public class LineClient implements ActionListener {
    	private String ip;
    	private int port;
    	private JButton l;
    	private String input;
    	private Scanner socketIn;
    	private PrintWriter socketOut;
    	private String coloreGiocatore;
    	private String partita;
    	private String tessera;
    	private String delim=":,";
    	
    	public LineClient(String ip, int port) {
    		this.ip = ip;
    		this.port = port;
    	}
    	
    	public static void main(String[] args) {
    		LineClient client = new LineClient("127.0.0.1", 4747);
    		try {
    			client.startClient();
    		} catch (IOException e) {
    			System.err.println(e.getMessage());
    		}
    	}
    	public void actionPerformed(ActionEvent e)
        {
                Object source = e.getSource();
                if (source == l){
                        input="Continua";
                		socketOut.println(input);socketOut.flush();
                		}
             }
    
    	public void startClient() throws IOException {
    		
    		Socket socket = new Socket(ip, port);
    		
    		System.out.println("Connection established");
    		socketIn = new Scanner(socket.getInputStream());
    		socketOut = new PrintWriter(socket.getOutputStream());
    		Scanner stdin = new Scanner(System.in);
    		
    		
    		try {
    			while (true) {
    				String socketLine = socketIn.nextLine();//ricevo inizio partita
    				mainFrame.openMainFrame();
    				mainFrame.startframe.setVisible(false);
    				riceviInizio(socketLine);
    				
    				socketLine = socketIn.nextLine();
                                
    				System.out.println(socketLine);
    			}
    		} catch(NoSuchElementException e) {
    			System.out.println("Connection closed");
    		} finally {
    			stdin.close();
    			socketIn.close();
    			socketOut.close();
    			socket.close();
    		}
    	}

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    60
    Idee nuove??

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.