Ciao a tutti, stavo svolgendo un esercizio, ma stranamente ho un' eccezione che non so spiegarmi:
codice:Exception in thread "main" java.net.ConnectException: connect: Address is invalid on local machine, or port is not valid on remote machine at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) at java.net.Socket.connect(Socket.java:579) at java.net.Socket.connect(Socket.java:528) at java.net.Socket.<init>(Socket.java:425) at java.net.Socket.<init>(Socket.java:241) at Client.main(Client.java:21)
Sembra che il problema sia al momento di creazione della socket:
Ecco il codice:
codice:import java.io.*; import java.net.*; public class Client{ public static void main(String [] args) throws Exception { /*try{*/ final String SERVERADDR= "151.97.252.130"; final int PORT=80; InetAddress addr=InetAddress.getByName(SERVERADDR); final String msg= "GET /pappalardo/prova/06.aux\n"; int index=0; String s=""; boolean trovato=false; String tmp=""; Socket client=new Socket(addr, PORT); OutputStreamWriter o=new OutputStreamWriter(client.getOutputStream()); BufferedWriter w=new BufferedWriter(o); PrintWriter out=new PrintWriter(w, true); System.out.println("Invio la stringa: "+"GET /pappalardo/prova/06.aux\n"); out.println("GET /pappalardo/prova/06.aux\n"); InputStreamReader in=new InputStreamReader(client.getInputStream()); BufferedReader reader=new BufferedReader(in); while(!trovato){ tmp+=reader.readLine(); for(int i=0; i<tmp.length(); i++){ if(tmp.charAt(i)=='x' || tmp.charAt(i)==' ' || tmp.charAt(i)=='\n') index=i; trovato=true; } s+=tmp.substring(index, tmp.length()); } while(reader.ready()){ s+=reader.readLine(); } s+='\n'; System.out.println("Invio su connessione aperta: "+s); out.println(s); //Server nuovo stream output???? InputStreamReader i2=new InputStreamReader(client.getInputStream()); BufferedReader reader2=new BufferedReader(i2); System.out.println("Ho ricevuto: "+reader2.readLine()); client.close(); reader2.close(); reader.close(); out.close(); /* } catch(Exception e){ System.out.println("Errore!!!"); }*/ } }

Rispondi quotando