Je fais un proxy en java
Fermé
karine
-
14 avril 2005 à 10:26
Satrialien Messages postés 52 Date d'inscription mercredi 9 mars 2005 Statut Membre Dernière intervention 28 janvier 2006 - 15 avril 2005 à 16:59
Satrialien Messages postés 52 Date d'inscription mercredi 9 mars 2005 Statut Membre Dernière intervention 28 janvier 2006 - 15 avril 2005 à 16:59
A voir également:
- Je fais un proxy en java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java décompiler - Télécharger - Langages
10 réponses
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
14 avril 2005 à 14:58
14 avril 2005 à 14:58
Salut,
Ton serveur pour l'instant accepte l'appel du client et crée le canal de communication. Tu as (ou vas) surement développé un traitement du côté serveur qui va prendre la requête du client, et la forwarder à son destinataire. Quand ton serveur recevra la réponse de ce destinataire, il faudra qu'il forwarde cette réponse au client via la socket créée avant. Tu n'as donc qu'à sérialiser cette requête avant de la passer au client. Comme le "fonctionnement" de proxy de ton serveur est une classe (ou méthode...) qui t'es propre, rien ne t'empêche de faire cette sérialisation comme bon te semble, tu n'as pas besoin d'écouter le serveur.
Je ne sais pas si je suis vraiment très clair... :)
Aurélien
Ton serveur pour l'instant accepte l'appel du client et crée le canal de communication. Tu as (ou vas) surement développé un traitement du côté serveur qui va prendre la requête du client, et la forwarder à son destinataire. Quand ton serveur recevra la réponse de ce destinataire, il faudra qu'il forwarde cette réponse au client via la socket créée avant. Tu n'as donc qu'à sérialiser cette requête avant de la passer au client. Comme le "fonctionnement" de proxy de ton serveur est une classe (ou méthode...) qui t'es propre, rien ne t'empêche de faire cette sérialisation comme bon te semble, tu n'as pas besoin d'écouter le serveur.
Je ne sais pas si je suis vraiment très clair... :)
Aurélien
Merci aurélien pour ton aide,
j'ai réussi à récupérer la réponse du serveur web mais maintenant j'ai une erreur java.net.SocketException: Too many open files
J'ai augmenté dans le fichier limits.conf le nombre de descripteurs de fichiers autorisés (il est maintenant à 4096).
J'ai pourtant encore cette erreur.
Si quelqu'un a déjà vu ce genre d'erreur, je veux bien un petit coup de main ...
j'ai réussi à récupérer la réponse du serveur web mais maintenant j'ai une erreur java.net.SocketException: Too many open files
J'ai augmenté dans le fichier limits.conf le nombre de descripteurs de fichiers autorisés (il est maintenant à 4096).
J'ai pourtant encore cette erreur.
Si quelqu'un a déjà vu ce genre d'erreur, je veux bien un petit coup de main ...
En fait je viens de m'apercevoir qu'il n'y a pas de limites sur ma machine pour le nombre de descripteurs.
J'ai fait netstat et j'obtient ça :
C'est normal ou est-ce que c'est trop ?
Si oui, comment je fais pour fermer tout ça vu que dans mon code je dis déjà de fermer les connexions ?
J'ai fait netstat et j'obtient ça :
(Tous les processus ne peuvent être identifiés, les infos sur les processus non possédés ne seront pas affichées, vous devez être root pour les voir toutes.) Connexions Internet actives (serveurs et établies) Proto Recv-Q Send-Q Adresse locale Adresse distante Etat PID/Program name tcp 0 0 localhost.localdo:32768 *:* LISTEN - tcp 0 0 *:32769 *:* LISTEN - tcp 0 0 *:nfs *:* LISTEN - tcp 0 0 *:printer *:* LISTEN - tcp 0 0 *:5222 *:* LISTEN - tcp 0 0 localhost.localdo:10026 *:* LISTEN - tcp 0 0 *:netbios-ssn *:* LISTEN - tcp 0 0 *:974 *:* LISTEN - tcp 0 0 *:sunrpc *:* LISTEN - tcp 0 0 *:distcc *:* LISTEN - tcp 0 0 *:1009 *:* LISTEN - tcp 0 0 *:849 *:* LISTEN - tcp 0 0 *:5269 *:* LISTEN - tcp 0 0 *:1015 *:* LISTEN - tcp 0 0 *:ipp *:* LISTEN - tcp 0 0 *:12345 *:* LISTEN - tcp 0 0 localhost.localdom:smtp *:* LISTEN - tcp 0 0 *:microsoft-ds *:* LISTEN - tcp 0 0 hill.lip6.fr:35039 gontran.commentcam:http TIME_WAIT - tcp 0 0 hill.lip6.fr:33449 mailia.lip6.fr:imap ESTABLISHED 31164/thunderbird-b tcp 0 0 hill.lip6.fr:33452 mailia.lip6.fr:imap ESTABLISHED 31164/thunderbird-b tcp 0 0 hill.lip6.fr:33403 mailia.lip6.fr:imap ESTABLISHED 31164/thunderbird-b tcp 0 0 *:ssh *:* LISTEN - tcp 0 0 hill.lip6.fr:ssh gaya.lip6.fr:55650 ESTABLISHED - tcp 0 0 hill.lip6.fr:ssh spip.lip6.fr:41952 ESTABLISHED - udp 0 0 *:32768 *:* - udp 0 0 *:nfs *:* - udp 0 0 hill.lip6.fr:netbios-ns *:* - udp 0 0 *:netbios-ns *:* - udp 0 0 hill.lip6.f:netbios-dgm *:* - udp 0 0 *:netbios-dgm *:* - udp 0 0 *:800 *:* - udp 0 0 *:952 *:* - udp 0 0 *:bootpc *:* - udp 0 0 *:842 *:* - udp 0 0 *:971 *:* - udp 0 0 *:846 *:* - udp 0 0 *:1006 *:* - udp 0 0 *:sunrpc *:* - udp 0 0 *:1012 *:* - raw 0 0 *:255 *:* 7 - Sockets du domaine UNIX actives(serveurs et établies) Proto RefCpt Indicatrs Type Etat I-Node PID/Program name Chemin unix 16 [ ] DGRAM 6665 - /dev/log unix 2 [ ACC ] STREAM LISTENING 8865 - private/verify unix 2 [ ACC ] STREAM LISTENING 8869 - public/flush unix 2 [ ACC ] STREAM LISTENING 8873 - private/proxymap unix 2 [ ACC ] STREAM LISTENING 8011 - /tmp/.gdm_socket unix 2 [ ACC ] STREAM LISTENING 1148653 - /tmp/ssh-lNboB29731/agent.29731 unix 2 [ ACC ] STREAM LISTENING 8877 - private/smtp unix 2 [ ACC ] STREAM LISTENING 8881 - private/relay unix 2 [ ACC ] STREAM LISTENING 8885 - public/showq unix 2 [ ACC ] STREAM LISTENING 8889 - private/error unix 2 [ ACC ] STREAM LISTENING 8893 - private/local unix 2 [ ACC ] STREAM LISTENING 8897 - private/virtual unix 2 [ ACC ] STREAM LISTENING 8901 - private/lmtp unix 2 [ ACC ] STREAM LISTENING 8861 - private/trace unix 2 [ ACC ] STREAM LISTENING 6974 - /dev/gpmctl unix 2 [ ACC ] STREAM LISTENING 1148833 29898/kdeinit: Runn /tmp/ksocket-papin/kdeinit__0 unix 2 [ ACC ] STREAM LISTENING 1149177 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 2 [ ACC ] STREAM LISTENING 1148835 29898/kdeinit: Runn /tmp/ksocket-papin/kdeinit-:0 unix 2 [ ACC ] STREAM LISTENING 8200 - /tmp/.X11-unix/X0 unix 2 [ ACC ] STREAM LISTENING 8905 - private/anvil unix 2 [ ACC ] STREAM LISTENING 1148841 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 2 [ ACC ] STREAM LISTENING 8909 - private/maildrop unix 2 [ ACC ] STREAM LISTENING 8913 - private/cyrus-deliver unix 2 [ ACC ] STREAM LISTENING 8917 - private/cyrus unix 2 [ ACC ] STREAM LISTENING 1061072 5504/gconfd-2 /home/papin/tmp/orbit-papin/linc-1580-0-4f6470492aef7 unix 2 [ ACC ] STREAM LISTENING 8921 - private/cyrus-chroot unix 2 [ ACC ] STREAM LISTENING 8925 - private/cyrus-inet unix 2 [ ACC ] STREAM LISTENING 8929 - private/uucp unix 2 [ ACC ] STREAM LISTENING 8936 - private/lmtp-filter unix 2 [ ACC ] STREAM LISTENING 8940 - private/smtp-filter unix 2 [ ] DGRAM 6673 - /var/spool/postfix/dev/log unix 2 [ ACC ] STREAM LISTENING 7498 - /tmp/.font-unix/fs-1 unix 2 [ ACC ] STREAM LISTENING 7515 - /var/run/dbus/system_dbus_socket unix 2 [ ACC ] STREAM LISTENING 8839 - public/cleanup unix 2 [ ACC ] STREAM LISTENING 1151224 31164/thunderbird-b /home/papin/tmp/orbit-papin/linc-79bc-0-1ebb4b3671ad unix 2 [ ACC ] STREAM LISTENING 8857 - private/defer unix 2 [ ] DGRAM 741 - @udevd unix 2 [ ACC ] STREAM LISTENING 1148993 29903/kdeinit: klau /tmp/ksocket-papin/klauncherbGjLJb.slave-socket unix 2 [ ACC ] STREAM LISTENING 1149084 29923/artsd /tmp/mcop-papin/hill_lip6_fr-74e3-425e6d7d unix 2 [ ACC ] STREAM LISTENING 1149029 - /tmp/.fam_socket unix 2 [ ACC ] STREAM LISTENING 1148816 29880/magicdev /home/papin/tmp/orbit-papin/linc-74b8-0-7eaa6aa25056 unix 2 [ ACC ] STREAM LISTENING 1148757 29861/dbus-daemon-1 @/tmp/dbus-byR8yKfhlL unix 2 [ ACC ] STREAM LISTENING 8849 - private/rewrite unix 2 [ ACC ] STREAM LISTENING 8853 - private/bounce unix 3 [ ] STREAM CONNECTE 1179026 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1179025 1535/konquerorDlpKB unix 3 [ ] STREAM CONNECTE 1178987 29964/kdeinit: konq /tmp/ksocket-papin/konquerorDlpKBb.slave-socket unix 3 [ ] STREAM CONNECTE 1178986 1535/konquerorDlpKB unix 3 [ ] STREAM CONNECTE 1164677 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1164676 1343/konquerorO3dqh unix 3 [ ] STREAM CONNECTE 1164674 29964/kdeinit: konq /tmp/ksocket-papin/konquerorO3dqhb.slave-socket unix 3 [ ] STREAM CONNECTE 1164673 1343/konquerorO3dqh unix 3 [ ] STREAM CONNECTE 1164659 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1164658 1342/konqueror6txFi unix 3 [ ] STREAM CONNECTE 1164644 29964/kdeinit: konq /tmp/ksocket-papin/konqueror6txFia.slave-socket unix 3 [ ] STREAM CONNECTE 1164643 1342/konqueror6txFi unix 3 [ ] STREAM CONNECTE 1164611 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1164610 1341/konqueroreY8UF unix 3 [ ] STREAM CONNECTE 1164609 29964/kdeinit: konq /tmp/ksocket-papin/konqueroreY8UFb.slave-socket unix 3 [ ] STREAM CONNECTE 1164603 1341/konqueroreY8UF unix 2 [ ] DGRAM 1153085 - unix 3 [ ] STREAM CONNECTE 1153043 29903/kdeinit: klau /tmp/ksocket-papin/klauncherbGjLJb.slave-socket unix 3 [ ] STREAM CONNECTE 1153042 29973/konquerorGeip unix 3 [ ] STREAM CONNECTE 1151802 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1151801 31371/kdeinit: kio_ unix 3 [ ] STREAM CONNECTE 1151800 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1151797 31371/kdeinit: kio_ unix 3 [ ] STREAM CONNECTE 1151796 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1151795 31371/kdeinit: kio_ unix 3 [ ] STREAM CONNECTE 1151226 31164/thunderbird-b /home/papin/tmp/orbit-papin/linc-79bc-0-1ebb4b3671ad unix 3 [ ] STREAM CONNECTE 1151225 5504/gconfd-2 unix 3 [ ] STREAM CONNECTE 1151223 5504/gconfd-2 /home/papin/tmp/orbit-papin/linc-1580-0-4f6470492aef7 unix 3 [ ] STREAM CONNECTE 1151222 31164/thunderbird-b unix 3 [ ] STREAM CONNECTE 1151208 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1151207 31164/thunderbird-b unix 3 [ ] STREAM CONNECTE 1151180 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1151179 29903/kdeinit: klau unix 3 [ ] STREAM CONNECTE 1149844 - /tmp/.famA7gQff unix 3 [ ] STREAM CONNECTE 1149843 29993/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149832 - /tmp/.famowPLOG unix 3 [ ] STREAM CONNECTE 1149831 29991/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149820 - /tmp/.famAZVUA8 unix 3 [ ] STREAM CONNECTE 1149819 29992/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149812 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149811 29993/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149807 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149806 29993/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149805 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149804 29993/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149803 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149802 29992/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149797 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149796 29992/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149795 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149794 29991/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149793 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149792 29992/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149787 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149786 29991/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149782 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149781 29991/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149766 - /tmp/.famIIhLnB unix 3 [ ] STREAM CONNECTE 1149765 29969/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149758 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149757 29984/kdeinit: kons unix 3 [ ] STREAM CONNECTE 1149752 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149751 29984/kdeinit: kons unix 3 [ ] STREAM CONNECTE 1149737 - /tmp/.fam8EbQ58 unix 3 [ ] STREAM CONNECTE 1149736 29974/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149728 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149727 29969/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149724 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149723 29969/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149691 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149690 29984/kdeinit: kons unix 3 [ ] STREAM CONNECTE 1149687 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149686 29974/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149654 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149653 29969/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149641 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149640 29974/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149617 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149616 29912/kdeinit: kded unix 3 [ ] STREAM CONNECTE 1149586 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149585 29974/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149536 - /tmp/.faminRS9I unix 3 [ ] STREAM CONNECTE 1149535 29967/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149520 - /tmp/.famYZJuQo unix 3 [ ] STREAM CONNECTE 1149519 29968/korgac unix 3 [ ] STREAM CONNECTE 1149500 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149499 29968/korgac unix 3 [ ] STREAM CONNECTE 1149498 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149497 29964/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149470 - /tmp/.famidaxw5 unix 3 [ ] STREAM CONNECTE 1149469 29965/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149465 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149464 29968/korgac unix 3 [ ] STREAM CONNECTE 1149455 - /tmp/.famsBwe5P unix 3 [ ] STREAM CONNECTE 1149454 29966/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149444 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149443 29967/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149438 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149437 29967/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149445 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149436 29968/korgac unix 3 [ ] STREAM CONNECTE 1149434 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149433 29966/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149431 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149430 29967/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149426 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149425 29966/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149420 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149419 29966/kdeinit: kwri unix 3 [ ] STREAM CONNECTE 1149417 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149416 29965/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149410 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149409 29965/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149407 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149406 29964/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149405 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149404 29965/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149397 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149396 29964/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149395 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149394 29964/kdeinit: konq unix 3 [ ] STREAM CONNECTE 1149393 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149392 29963/kwikdisk unix 3 [ ] STREAM CONNECTE 1149387 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149386 29963/kwikdisk unix 3 [ ] STREAM CONNECTE 1149385 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149384 29963/kwikdisk unix 3 [ ] STREAM CONNECTE 1149365 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149364 29955/kdeinit: kick unix 3 [ ] STREAM CONNECTE 1149296 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149295 29955/kdeinit: kick unix 3 [ ] STREAM CONNECTE 1149292 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149291 29955/kdeinit: kick unix 3 [ ] STREAM CONNECTE 1149266 - /tmp/.famg6HCGA unix 3 [ ] STREAM CONNECTE 1149265 29948/kdeinit: kdes unix 3 [ ] STREAM CONNECTE 1149258 29923/artsd /tmp/mcop-papin/hill_lip6_fr-74e3-425e6d7d unix 3 [ ] STREAM CONNECTE 1149257 29948/kdeinit: kdes unix 3 [ ] STREAM CONNECTE 1149234 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149233 29947/kdeinit: khot unix 3 [ ] STREAM CONNECTE 1149224 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149223 29948/kdeinit: kdes unix 3 [ ] STREAM CONNECTE 1149220 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149219 29947/kdeinit: khot unix 3 [ ] STREAM CONNECTE 1149216 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149215 29948/kdeinit: kdes unix 3 [ ] STREAM CONNECTE 1149212 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149211 29947/kdeinit: khot unix 3 [ ] STREAM CONNECTE 1149210 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149209 29948/kdeinit: kdes unix 3 [ ] STREAM CONNECTE 1149195 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149194 29944/kdeinit: kwin unix 3 [ ] STREAM CONNECTE 1149193 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149192 29944/kdeinit: kwin unix 3 [ ] STREAM CONNECTE 1149184 29942/kdeinit: ksms /tmp/.ICE-unix/29942 unix 3 [ ] STREAM CONNECTE 1149183 29944/kdeinit: kwin unix 3 [ ] STREAM CONNECTE 1149182 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149181 29944/kdeinit: kwin unix 3 [ ] STREAM CONNECTE 1149176 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149175 29942/kdeinit: ksms unix 3 [ ] STREAM CONNECTE 1149164 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149163 29942/kdeinit: ksms unix 3 [ ] STREAM CONNECTE 1149158 29942/kdeinit: ksms /tmp/ksocket-papin/kdeinit__0 unix 3 [ ] STREAM CONNECTE 1149157 29940/kwrapper unix 3 [ ] STREAM CONNECTE 1149154 29923/artsd /tmp/mcop-papin/hill_lip6_fr-74e3-425e6d7d unix 3 [ ] STREAM CONNECTE 1149153 29927/kdeinit: knot unix 3 [ ] STREAM CONNECTE 1149107 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149106 29927/kdeinit: knot unix 3 [ ] STREAM CONNECTE 1149103 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149102 29927/kdeinit: knot unix 3 [ ] STREAM CONNECTE 1149057 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149056 29898/kdeinit: Runn unix 3 [ ] STREAM CONNECTE 1149053 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149052 29912/kdeinit: kded unix 3 [ ] STREAM CONNECTE 1149035 - /tmp/.famqgw0bx unix 3 [ ] STREAM CONNECTE 1149034 29912/kdeinit: kded unix 3 [ ] STREAM CONNECTE 1149005 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1149004 29912/kdeinit: kded unix 3 [ ] STREAM CONNECTE 1149001 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1149000 29912/kdeinit: kded unix 3 [ ] STREAM CONNECTE 1148989 29901/kdeinit: dcop /tmp/.ICE-unix/dcop29901-1113484664 unix 3 [ ] STREAM CONNECTE 1148988 29903/kdeinit: klau unix 3 [ ] STREAM CONNECTE 1148856 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1148855 29840/perl unix 3 [ ] STREAM CONNECTE 1148847 29903/kdeinit: klau unix 3 [ ] STREAM CONNECTE 1148846 29898/kdeinit: Runn unix 3 [ ] STREAM CONNECTE 1148818 29880/magicdev /home/papin/tmp/orbit-papin/linc-74b8-0-7eaa6aa25056 unix 3 [ ] STREAM CONNECTE 1148817 5504/gconfd-2 unix 3 [ ] STREAM CONNECTE 1148815 5504/gconfd-2 /home/papin/tmp/orbit-papin/linc-1580-0-4f6470492aef7 unix 3 [ ] STREAM CONNECTE 1148814 29880/magicdev unix 3 [ ] STREAM CONNECTE 1148798 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1148797 29880/magicdev unix 3 [ ] STREAM CONNECTE 1148774 29861/dbus-daemon-1 @/tmp/dbus-byR8yKfhlL unix 3 [ ] STREAM CONNECTE 1148773 29873/s2u unix 3 [ ] STREAM CONNECTE 1148761 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1148760 29859/dbus-launch unix 3 [ ] STREAM CONNECTE 1148759 29861/dbus-daemon-1 unix 3 [ ] STREAM CONNECTE 1148758 29861/dbus-daemon-1 unix 2 [ ] DGRAM 1148756 29840/perl unix 3 [ ] STREAM CONNECTE 1148706 - /var/run/dbus/system_dbus_socket unix 3 [ ] STREAM CONNECTE 1148704 29819/bluez-pin unix 3 [ ] STREAM CONNECTE 1148703 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1148702 29819/bluez-pin unix 3 [ ] STREAM CONNECTE 1147659 - /tmp/.font-unix/fs-1 unix 3 [ ] STREAM CONNECTE 1147658 - unix 7 [ ] STREAM CONNECTE 1147660 - /tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTE 1147653 - unix 2 [ ] DGRAM 1061068 5504/gconfd-2 unix 2 [ ] STREAM CONNECTE 993212 - unix 2 [ ] STREAM CONNECTE 805650 - unix 2 [ ] STREAM CONNECTE 713659 - unix 2 [ ] STREAM CONNECTE 644678 - unix 3 [ ] STREAM CONNECTE 409905 - unix 3 [ ] STREAM CONNECTE 409904 - unix 2 [ ] STREAM CONNECTE 335887 - unix 2 [ ] STREAM CONNECTE 324537 - unix 2 [ ] DGRAM 96504 - unix 2 [ ] DGRAM 28424 - unix 2 [ ] DGRAM 9188 - unix 2 [ ] DGRAM 8978 - unix 2 [ ] DGRAM 8962 - unix 3 [ ] STREAM CONNECTE 8943 - unix 3 [ ] STREAM CONNECTE 8942 - unix 3 [ ] STREAM CONNECTE 8939 - unix 3 [ ] STREAM CONNECTE 8938 - unix 3 [ ] STREAM CONNECTE 8935 - unix 3 [ ] STREAM CONNECTE 8934 - unix 3 [ ] STREAM CONNECTE 8932 - unix 3 [ ] STREAM CONNECTE 8931 - unix 3 [ ] STREAM CONNECTE 8928 - unix 3 [ ] STREAM CONNECTE 8927 - unix 3 [ ] STREAM CONNECTE 8924 - unix 3 [ ] STREAM CONNECTE 8923 - unix 3 [ ] STREAM CONNECTE 8920 - unix 3 [ ] STREAM CONNECTE 8919 - unix 3 [ ] STREAM CONNECTE 8916 - unix 3 [ ] STREAM CONNECTE 8915 - unix 3 [ ] STREAM CONNECTE 8912 - unix 3 [ ] STREAM CONNECTE 8911 - unix 3 [ ] STREAM CONNECTE 8908 - unix 3 [ ] STREAM CONNECTE 8907 - unix 3 [ ] STREAM CONNECTE 8904 - unix 3 [ ] STREAM CONNECTE 8903 - unix 3 [ ] STREAM CONNECTE 8900 - unix 3 [ ] STREAM CONNECTE 8899 - unix 3 [ ] STREAM CONNECTE 8896 - unix 3 [ ] STREAM CONNECTE 8895 - unix 3 [ ] STREAM CONNECTE 8892 - unix 3 [ ] STREAM CONNECTE 8891 - unix 3 [ ] STREAM CONNECTE 8888 - unix 3 [ ] STREAM CONNECTE 8887 - unix 3 [ ] STREAM CONNECTE 8884 - unix 3 [ ] STREAM CONNECTE 8883 - unix 3 [ ] STREAM CONNECTE 8880 - unix 3 [ ] STREAM CONNECTE 8879 - unix 3 [ ] STREAM CONNECTE 8876 - unix 3 [ ] STREAM CONNECTE 8875 - unix 3 [ ] STREAM CONNECTE 8872 - unix 3 [ ] STREAM CONNECTE 8871 - unix 3 [ ] STREAM CONNECTE 8868 - unix 3 [ ] STREAM CONNECTE 8867 - unix 3 [ ] STREAM CONNECTE 8864 - unix 3 [ ] STREAM CONNECTE 8863 - unix 3 [ ] STREAM CONNECTE 8860 - unix 3 [ ] STREAM CONNECTE 8859 - unix 3 [ ] STREAM CONNECTE 8856 - unix 3 [ ] STREAM CONNECTE 8855 - unix 3 [ ] STREAM CONNECTE 8852 - unix 3 [ ] STREAM CONNECTE 8851 - unix 3 [ ] STREAM CONNECTE 8848 - unix 3 [ ] STREAM CONNECTE 8847 - unix 3 [ ] STREAM CONNECTE 8845 - unix 3 [ ] STREAM CONNECTE 8844 - unix 3 [ ] STREAM CONNECTE 8842 - unix 3 [ ] STREAM CONNECTE 8841 - unix 3 [ ] STREAM CONNECTE 8838 - unix 3 [ ] STREAM CONNECTE 8837 - unix 3 [ ] STREAM CONNECTE 8835 - unix 3 [ ] STREAM CONNECTE 8834 - unix 2 [ ] DGRAM 8814 - unix 2 [ ] DGRAM 8257 - unix 2 [ ] STREAM CONNECTE 8222 - unix 3 [ ] STREAM CONNECTE 7547 - unix 3 [ ] STREAM CONNECTE 7546 - unix 2 [ ] DGRAM 7512 - unix 2 [ ] DGRAM 6973 - unix 2 [ ] DGRAM 6800 - unix 2 [ ] DGRAM 6693 - unix 2 [ ] DGRAM 701 -
C'est normal ou est-ce que c'est trop ?
Si oui, comment je fais pour fermer tout ça vu que dans mon code je dis déjà de fermer les connexions ?
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
14 avril 2005 à 17:36
14 avril 2005 à 17:36
je pense en effet qu'il y a trop de connexions ouvertes :)
as-tu positionné un timeout sur ta socket ?
comment-gère tu la fermeture de connexion ? => un client se connecte, envoie sa requête, le serveur lui répond et ferme la connexion ??
as-tu positionné un timeout sur ta socket ?
comment-gère tu la fermeture de connexion ? => un client se connecte, envoie sa requête, le serveur lui répond et ferme la connexion ??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
D'accord,
mais comment je fais pour fermer toutes celles qui s'affichent dans le terminal ?
Avec un kill, ça va me prendre longtemps pour toutes les fermer. En plus, certaines n'ont pas de PID affiché.
Pour les fermetures de conexions, j'ai l'impression que je ferme bien tout mais peut-être que je me trompe.Je te montre un bout de mon code :
Puis la classe OneServeur :
Si quelqu'un voit quelque chose qui cloche, ça m'intéresse ! ;-)
mais comment je fais pour fermer toutes celles qui s'affichent dans le terminal ?
Avec un kill, ça va me prendre longtemps pour toutes les fermer. En plus, certaines n'ont pas de PID affiché.
Pour les fermetures de conexions, j'ai l'impression que je ferme bien tout mais peut-être que je me trompe.Je te montre un bout de mon code :
public class PServer { final static int localport = 8080; public static int proxyport = 8080; public static String proxy = "localhost"; public static void main(String[] args) throws IOException { ServerSocket serveur = null; try{ serveur = new ServerSocket(localport); System.out.println("Serveur proxy démarré sur le port " + localport); // Ecoute infinie des requêtes des clients while(true){ Socket client = serveur.accept(); //Clients c = new Clients(client); //socket vers le serveur web Socket socketToWeb = new Socket(InetAddress.getByName(proxy),proxyport); OneServeur cli = new OneServeur(client, socketToWeb, null); new OneServeur(socketToWeb, client, cli); } } catch (Exception e){System.err.println(e);} finally{ try{ if (serveur != null) serveur.close(); } catch (Exception e){System.err.println(e);} } } } // ! PServ class
Puis la classe OneServeur :
class OneServeur extends Thread { private Socket socketFrom, socketTo; private OneServeur cli; private InputStream from; private OutputStream to; public OneServeur (Socket fromW, Socket toW, OneServeur cliW) throws IOException{ socketFrom = fromW; socketTo = toW; cli = cliW; start(); } public void run() { String tmp; int position; boolean fini = false; String str = ""; try { from = socketFrom.getInputStream(); BufferedReader from_client = new BufferedReader(new InputStreamReader(from)); to = socketTo.getOutputStream(); byte [] buffer = new byte[4096]; while(((tmp = from_client.readLine()) != null) && !fini){ System.out.println(tmp); } } catch ( Exception e ) {System.err.println(e); System.out.println("problème dans run()");} close(); if (cli != null) cli.close(); } public void close() { try { socketFrom.close(); from.close(); } catch ( Exception e) {System.out.println("problème dans close()");} } }
Si quelqu'un voit quelque chose qui cloche, ça m'intéresse ! ;-)
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
15 avril 2005 à 13:29
15 avril 2005 à 13:29
quand fermes-tu la socket ouverte entre le serveur et le serveur web ? (la socketToWeb de ta classe pServer)
J'ai rajouté deux lignes dans la classe OneServeur:
Là je ferme bien le socketToWeb.
Mais j'ai toujours la même erreur Too many files open...
Je ne sais plus quoi faire...
public void close() { try { socketFrom.close(); from.close(); socketTo.close(); to.close(); } catch ( Exception e) {System.out.println("problème dans close()");} }
Là je ferme bien le socketToWeb.
Mais j'ai toujours la même erreur Too many files open...
Je ne sais plus quoi faire...
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
15 avril 2005 à 14:35
15 avril 2005 à 14:35
j'ai peut-être vu un truc, ton booléen "fini", tu l'initialises à false, et tu ne repositionnes jamais sa valeur.
Or, tu fais un test avec un && logique dans OneServeur :
Comme ton booléen ne change jamais de valeur, ton OneServeur reste bloqué là à moins d'une exception.
Autre chose, tu fermes plusieurs fois la même chose : dans ton OneServeur tu fermes toutes les sockets, mais comme tu as 2 OneServer ça peut entrainer des fermetures croisées sur les mêmes objets.
Tu peux peut-être avoir une exception qui empêche les fermetures suivantes.
Le mieux serait de ne manipuler qu'une seule instance de OneServeur qui fasse tt le boulot au lieu d'en instancier 2 en échangeant les variables. Essaies comme ceci :
encadre chaque close() de socket par un bloc try catch(Throwable t).
Car dans le bout de code suivant :
si tu as une erreur sur le premier close(), les autres ne seront pas faits.
Or, tu fais un test avec un && logique dans OneServeur :
while(((tmp = from_client.readLine()) != null) && !fini){ System.out.println(tmp);
Comme ton booléen ne change jamais de valeur, ton OneServeur reste bloqué là à moins d'une exception.
Autre chose, tu fermes plusieurs fois la même chose : dans ton OneServeur tu fermes toutes les sockets, mais comme tu as 2 OneServer ça peut entrainer des fermetures croisées sur les mêmes objets.
Tu peux peut-être avoir une exception qui empêche les fermetures suivantes.
Le mieux serait de ne manipuler qu'une seule instance de OneServeur qui fasse tt le boulot au lieu d'en instancier 2 en échangeant les variables. Essaies comme ceci :
encadre chaque close() de socket par un bloc try catch(Throwable t).
Car dans le bout de code suivant :
try { socketFrom.close(); from.close(); socketTo.close(); to.close(); } catch ( Exception e) {System.out.println("problème dans close()");}
si tu as une erreur sur le premier close(), les autres ne seront pas faits.
J'ai remplacé
par
et j'ai changé le close de OneServeur en
Mais j'obtient toujours la même erreur !
Je vais mettre tout mon code, il y a peut etre quelque chose qui cloche là ou je ne pense pas.
et mon erreur c'est too many files open.
Est-ce que quelqu'un comprend quelque chose ?
PS : merci Satrialien pour ton aide
while(((tmp = from_client.readLine()) != null) && !fini){ System.out.println(tmp);
par
while(((tmp = from_client.readLine()) != null)){ System.out.println(tmp);
et j'ai changé le close de OneServeur en
public void close() { try { try { socketFrom.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { from.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { socketTo.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { to.close(); } catch(Throwable t) {System.out.println("problème dans close()");} } catch ( Exception e) {System.out.println("problème dans close()");} }
Mais j'obtient toujours la même erreur !
Je vais mettre tout mon code, il y a peut etre quelque chose qui cloche là ou je ne pense pas.
import java.io.*; import java.net.*; import java.util.*; import java.util.regex.*; import java.sql.*; import java.lang.*; public class PServer { final static int localport = 8080; public static int proxyport = 8080; public static String proxy = "localhost"; public static void main(String[] args) throws IOException { ServerSocket serveur = null; try{ serveur = new ServerSocket(localport); System.out.println("Serveur proxy démarré sur le port " + localport); // Ecoute infinie des requêtes des clients while(true){ Socket client = serveur.accept(); //Clients c = new Clients(client); //socket vers le serveur web Socket socketToWeb = new Socket(InetAddress.getByName(proxy),proxyport); OneServeur cli = new OneServeur(client, socketToWeb, null); new OneServeur(socketToWeb, client, cli); } } catch (Exception e){System.err.println(e);} finally{ try{ if (serveur != null) serveur.close(); } catch (Exception e){System.err.println(e);} } } } // ! PServ class class OneServeur extends Thread { private Socket socketFrom, socketTo; private OneServeur cli; private InputStream from; private OutputStream to; public OneServeur (Socket fromW, Socket toW, OneServeur cliW) throws IOException{ socketFrom = fromW; socketTo = toW; cli = cliW; start(); } public void run() { String tmp; int position; boolean fini = false; String str = ""; try { from = socketFrom.getInputStream(); BufferedReader from_client = new BufferedReader(new InputStreamReader(from)); to = socketTo.getOutputStream(); byte [] buffer = new byte[4096]; while(((tmp = from_client.readLine()) != null) ){ //&& !fini){ System.out.println(tmp); } } catch ( Exception e ) {System.err.println(e); System.out.println("problème dans run()");} close(); //if (cli != null) cli.close(); cli.close(); } public void close() { try { try { socketFrom.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { from.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { socketTo.close(); } catch(Throwable t) {System.out.println("problème dans close()");} try { to.close(); } catch(Throwable t) {System.out.println("problème dans close()");} } catch ( Exception e) {System.out.println("problème dans close()");} } }
et mon erreur c'est too many files open.
Est-ce que quelqu'un comprend quelque chose ?
PS : merci Satrialien pour ton aide
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
15 avril 2005 à 16:01
15 avril 2005 à 16:01
attends....
ton serveur proxy PServer qui accepte les connexions des clients écoute sur localhost:8080.
Pour tes tests, tu considères que le serveur web que veut atteindre ton client via le proxy est également localhost:8080.
Je pense que tu as une boucle infinie à cause de ça : ton client se connecte à ton PServer, qui crée les connexions vers le serveur web qui est en fait... lui-même ! et donc ces nouvelles connexions sont recrées sur le "accept" de ton PServer etc....
C'est pour ça qu'en lançant une seule connexion sur ton PServer ça te génère tout plein de sockets et ça en sature même le nombre max de handlers de fichiers de l'OS.
Il faudrait que tu te connectes sur un serveur web différent (configures un apache sur localhost mais pas sur le port 8080).
ton serveur proxy PServer qui accepte les connexions des clients écoute sur localhost:8080.
Pour tes tests, tu considères que le serveur web que veut atteindre ton client via le proxy est également localhost:8080.
Je pense que tu as une boucle infinie à cause de ça : ton client se connecte à ton PServer, qui crée les connexions vers le serveur web qui est en fait... lui-même ! et donc ces nouvelles connexions sont recrées sur le "accept" de ton PServer etc....
C'est pour ça qu'en lançant une seule connexion sur ton PServer ça te génère tout plein de sockets et ça en sature même le nombre max de handlers de fichiers de l'OS.
Il faudrait que tu te connectes sur un serveur web différent (configures un apache sur localhost mais pas sur le port 8080).
Tu veux dire par exemple que je dois modifier le port dans les paramètres du navigateur ?
localhost et 8081 par exemple
et la variable proxyport de mon fichier resterait à 8080. (8081 pour localport)
Si c'est pas ça, je veux bien une petite explication ;-)
localhost et 8081 par exemple
et la variable proxyport de mon fichier resterait à 8080. (8081 pour localport)
Si c'est pas ça, je veux bien une petite explication ;-)
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
15 avril 2005 à 16:49
15 avril 2005 à 16:49
en fait le pbm vient du fait que le proxy et le pseudo serveur web que tu veux contacter sont les mêmes.
Ton proxy est à l'écoute sur le port 8080 de localhost, ça c'est ce que tu fais avec l'instruction :
puisque localport=8080.
Normalement le client veut aller sur un site web x ou y, par exemple Google. Donc l'instruction :
devrait ouvrir une socket sur le port 8080 du serveur web de chez Google. Or tu ouvres cette connexion sur le port 8080 de localhost, autrement dit cette requête va parvenir de nouveau sur ton serveur proxy qui attend les connexions, bloqué sur son "accept" : il reçoit la demande, et rouvre un "socketToWeb" sur lui-même, rereçoit la demande etc.... => boucle infinie.
Ce qu'il faudrait que tu fasses, c'est laisser ton proxy écouter sur localhost:8080 (donc ne pas toucher à ton navigateur).
Par contre pour éviter l'effet de bord, il faudrait que tu te connectes sur un serveur web qui soit différent de localhost:8080, sinon tu vas avoir ce pbm de boucle infinie. Donc ce que je te propose de faire, c'est d'installer vite fait un Apache sur ta machine, tu le configures sur le port que tu veux (genre 8931), et tu changes la valeur de ta variable "proxyport" que tu positionnes à la valeur du port d'écoute de ton serveur web (8931). Maintenant, ton proxy va bien rediriger les requêtes vers un autre serveur et non lui même et tu ne devrais plus avoir d'effet de bord.
Je ne sais pas si c'est très clair... :)
Ton proxy est à l'écoute sur le port 8080 de localhost, ça c'est ce que tu fais avec l'instruction :
serveur = new ServerSocket(localport);
puisque localport=8080.
Normalement le client veut aller sur un site web x ou y, par exemple Google. Donc l'instruction :
Socket socketToWeb = new Socket(InetAddress.getByName(proxy),proxyport);
devrait ouvrir une socket sur le port 8080 du serveur web de chez Google. Or tu ouvres cette connexion sur le port 8080 de localhost, autrement dit cette requête va parvenir de nouveau sur ton serveur proxy qui attend les connexions, bloqué sur son "accept" : il reçoit la demande, et rouvre un "socketToWeb" sur lui-même, rereçoit la demande etc.... => boucle infinie.
Ce qu'il faudrait que tu fasses, c'est laisser ton proxy écouter sur localhost:8080 (donc ne pas toucher à ton navigateur).
Par contre pour éviter l'effet de bord, il faudrait que tu te connectes sur un serveur web qui soit différent de localhost:8080, sinon tu vas avoir ce pbm de boucle infinie. Donc ce que je te propose de faire, c'est d'installer vite fait un Apache sur ta machine, tu le configures sur le port que tu veux (genre 8931), et tu changes la valeur de ta variable "proxyport" que tu positionnes à la valeur du port d'écoute de ton serveur web (8931). Maintenant, ton proxy va bien rediriger les requêtes vers un autre serveur et non lui même et tu ne devrais plus avoir d'effet de bord.
Je ne sais pas si c'est très clair... :)
Je n'ai pas testé mais ton explication me semble claire.
Par contre je verrai ça que lundi car je dois partir en week-end.
En tout cas je te remercie beaucoup d'avoir pris le temps de regarder ça.
Je te tiendrai au courant si tu veux quand j'aurai résolu ce problème.
Bon week-end!!
Par contre je verrai ça que lundi car je dois partir en week-end.
En tout cas je te remercie beaucoup d'avoir pris le temps de regarder ça.
Je te tiendrai au courant si tu veux quand j'aurai résolu ce problème.
Bon week-end!!
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
15 avril 2005 à 16:59
15 avril 2005 à 16:59
de toute façon j'allais partir bientôt aussi :)
wai tiens moi au courant de l'évolution de ton pbm, c tjrs intéressant.
bon WE à toi aussi et à bientot !
Aurélien
wai tiens moi au courant de l'évolution de ton pbm, c tjrs intéressant.
bon WE à toi aussi et à bientot !
Aurélien