codice:import java.net.*; import java.io.*; import java.sql.*; import java.lang.*; class serverChat implements Runnable{ String data = "jdbc:odbc:archivio"; String user; private Socket connection; private Thread me; public serverChat (Socket s){ connection = s; me=new Thread(this); me.start(); System.out.println(connection); } public void run(){ try { ObjectInputStream is; ObjectOutputStream os; boolean continua=true; while (continua==true) { try{ System.out.println("Inizio"); is=new ObjectInputStream(connection.getInputStream()); controllore = (int[])is.readObject(); is.close(); System.out.println(controllore[0]); //System.out.println(""); System.out.println("Iniziato"); } catch (Exception e){}; switch (controllore[0]){ case 1: boolean esci[] = new boolean[1]; esci[0]=false; try{ System.out.println("eccoci al case 1"); System.out.println(esci[0]); boolean[] esciLogin = new boolean[1]; esciLogin[0]=false; while (esciLogin[0]!=true){ is = new ObjectInputStream(connection.getInputStream()); esci=(boolean[])is.readObject(); is.close(); if (esci[0]!=true){ is = new ObjectInputStream(connection.getInputStream()); UserPwd = (String[])is.readObject(); System.out.println("UserPwd: " + UserPwd[0] + " "+ UserPwd[1] + " " + UserPwd[2]); if (ControllaPWD(UserPwd)==true){ confrontoPWD[0]=true; esciLogin[0]=true; user=UserPwd[0]; } else confrontoPWD[0]=false; os = new ObjectOutputStream(connection.getOutputStream()); os.writeObject(confrontoPWD); }else esciLogin[0]=true; System.out.println(""); } }