| | |
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Autor | Správa |
---|
Registrovaný: 07.01.09 Prihlásený: 12.07.09 Príspevky: 8 Témy: 3 | Napísal Danusa: 09.07.2009 11:48 | |
|
Zdravim, mam taky problem so spojenim klient/server. Mam vytvorene tri sockety, cez ktore si stale nieco posielaju. Pomedzi komunikaciu, vypocitava server nejake veci(poslem kod). No a niekedy mi to na tretom sockete spadne, ked ho spustam niekolko krat za sebou tak z piatich spusteni mi ten treti socket klakne v priemere tri krat. Prosim poradte co s tym....
Tu je kod:
Client:
try{
Socket klient = new Socket("127.0.0.1", SERVER_PORT);
DataInputStream in = new DataInputStream(klient.getInputStream());
DataOutputStream out = new DataOutputStream(klient.getOutputStream());
//posielam na server hello
String text = "Hello";
byte[] posliHello= text.getBytes("UTF-8");
out.writeInt(posliHello.length);
out.write(posliHello);
out.flush();
//klient prijima Ahoj
prijmiAhoj = new byte[in.readInt()];
in.readFully(prijmiAhoj);
System.out.println(new String(prijmiAhoj, "UTF-8"));
out.close();
in.close();
klient.close();
} catch (Exception e) {
System.err.println("Pripojenie zlyhalo!!!");
System.exit(1);
}
Server:
try {
ServerSocket server = new ServerSocket(PORT);
Socket klient = server.accept();
DataInputStream in = new DataInputStream(klient.getInputStream());
DataOutputStream out = new DataOutputStream(klient.getOutputStream());
//server prijima Hello
byte[] prijmyHello = new byte[in.readInt()];
in.readFully(prijmyHello);
System.out.println(new String(prijmyHello, "UTF-8"));
//server posiela Ahoj
String text = "Ahoj";
byte[] posliAhoj= text.getBytes("UTF-8");
out.writeInt(posliAhoj.length);
out.write(posliAhoj);
out.flush();
out.close();
in.close();
server.close();
klient.close();
} catch (Exception e) {
e.printStackTrace();
}
Taketo spojenia mam vytvorene tri, na prvom a druhom to funguje v pohode, ale tretie mi pada casto. Prosim pomooooc.....
|
|
Registrovaný: 02.11.07 Prihlásený: 18.03.15 Príspevky: 470 Témy: 22 Bydlisko: Zilinska Un... |
Danusa na tieto veci su specializovanejsie fora, toto nie je take ... ale ko vidim tak tvoje veci tam asi riesi neaka implementacia Javy, tak napis na Java forum, kde su profi odbornici, kt. ti skor pomozu so vsetkym co potrebujes.......
http://forums.sun.com/index.jspa
ked ti to padne ti vyhodi bezpecnostnu vynimku_? Skus si v specifikacii pozriet ci tam niesu pre dane connect funkcie este ine exceptions a hod ich do programu, mozno ti povedia viac a o ake zariadenia sa presne jedna pri komunikacii a aky je tam komunikacny protokol?
_________________ Notebook: HP EliteBook 8740w
You can see my work in my www |
|
Registrovaný: 07.01.09 Prihlásený: 12.07.09 Príspevky: 8 Témy: 3 | Napísal autor témy Danusa: 12.07.2009 15:54 | |
|
Vdaka za to forum.
Vyhadzuje mi to vynimku, ale len obcas. Pouzila som TCP. Skusim pozriet na to forum
|
|
Registrovaný: 02.11.07 Prihlásený: 18.03.15 Príspevky: 470 Témy: 22 Bydlisko: Zilinska Un... |
Jjj, to forum je fajn, mne tam tiez velmi pomohli ......
J, to ze ti vyhadzuje vynimku je fajn v tom, ze sa da z nej urcit chyba, Daj si presne tu vynimku vypisat do konzole .... Skus si tiez Debugovat a krokovat softver. Debuger ti nekontroluje iba kod, ale aj veci s tym suvisiace pri plneni ulohy daneho kodu, cim si presne mozes zistit riadok na ktorom ti to mohlo spadnut pri prenose.
_________________ Notebook: HP EliteBook 8740w
You can see my work in my www |
|
Registrovaný: 10.07.09 Prihlásený: 14.01.13 Príspevky: 28 Témy: 3 | Napísal TJ: 13.07.2009 19:35 | |
|
Ahoj, ja som mal podobny problem. Program som sice pisal v C++, ale ja si myslim, ze chyba bude asi tam, ze posles request na server, a potom hned citas response. Ak server sa spomali, tak nestiha poslat response, ale ty ho uz citas. Skus tam pred prijmanie dat nejaky Thread.sleep (100);. Mozno to pomoze...
|
|
Registrovaný: 07.01.09 Prihlásený: 12.07.09 Príspevky: 8 Témy: 3 | Napísal autor témy Danusa: 18.07.2009 17:32 | |
|
Dakujem za rady, uz som to vyriesila
|
|
Registrovaný: 02.11.07 Prihlásený: 18.03.15 Príspevky: 470 Témy: 22 Bydlisko: Zilinska Un... |
A kde si mala chybu?, lebo ja teraz programujem komunikaciu mobil. telefon/server cez GSM , aby sa mi nestal podobny problem
_________________ Notebook: HP EliteBook 8740w
You can see my work in my www |
|
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|