[ krstak84 @ 09.03.2009. 05:45 ] @
Imam problem, ali rekao bih da je resenje jako jednostavno. Zapravo napravio sam malu chat aplikaciju gde klijent i server komuniciraju preko ip adrese. Evo i koda: Code: import java.net.*; import java.util.*; import java.io.*; abstract class SC { public void start(){} public void start(String address){} } class Client extends SC{ public void start(String ipad){ try{ Socket link = new Socket(ipad, 7904); System.out.println("Konekcija uspostavljena"); Scanner input = new Scanner(link.getInputStream()); PrintWriter output = new PrintWriter(link.getOutputStream(),true); Scanner us = new Scanner(System.in); String poruka, odgovor; System.out.print("Unesi poruku : "); poruka = us.nextLine(); output.println(poruka); odgovor = input.nextLine(); System.out.println("\nSERVER> "+odgovor); }catch(Exception e){ } } } class Server extends SC{ public void start(){ try{ ServerSocket soc = new ServerSocket(7904); Socket socket = soc.accept(); Scanner input = new Scanner(socket.getInputStream()); String inpu = input.nextLine(); System.out.println(inpu); PrintWriter output = new PrintWriter(socket.getOutputStream(),true); output.println("Poruka primljena, zatvaram konekciju !"); socket.close(); }catch(Exception e){ } } } class Glavna { public static void main(String[] args){ System.out.println("Unesi s za servera ili nesto drugo za klijenta"); Scanner in = new Scanner(System.in); String inh = in.nextLine(); SC chater; if(inh.equals("s")){ chater = new Server(); chater.start(); }else{ System.out.println("Unesi IP adresu "); Scanner ip = new Scanner(System.in); String ipad = in.nextLine(); chater = new Client(); chater.start(ipad); } } } Kada dva puta startujem aplikaciju iz komandne linije i jedna mi bude server a druga klijent, i kada unesem sa klijentske strane ip adresu 127.0.0.1, sve radi kako treba. Ali kada se zakacim na net i pogledam onu pravu ip adresu, i ponovo pokusam taj program da startujem i sada unesem pravu ip adresu sa klijentske strane, a ne 127.0.0.1, desava mi se to da klijent ne moze da nadje servera, tj. mene. Zasto je to tako, zasto u ovom slucaju nece da se ostvari konekcija? Unapred hvala na odgovorima. |