[JAVA] J'ai un FileNotFoundException avec l'objet URLConnection

J'ai un FileNotFoundException avec l'objet URLConnection [JAVA] - Java - Programmation

Marsh Posté le 23-04-2002 à 10:28:51    

Salut,
 
je dois envoyer des données vers un serveur CGI depuis un serveur Java, j'utilise la classe URLConnection pour cela.
 
Après l'envoi des données, je dois faire un connection.getInputStream(...) pour recuperer la reponse.
 
Cependant, il arrive de temps en temps que je récupère l'exception FileNotFoundException de manière aléatoire, le plus souvent ça marche, et des fois, je récupère cette exception.
 
Est-ce que quelqu'un sait à quoi c'est dû? Je suis sur JDK 1.2, est-ce que cette version serait buggée?

 

[jfdsdjhfuetppo]--Message édité par fdl le 23-04-2002 à 10:47:05--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 23-04-2002 à 10:28:51   

Reply

Marsh Posté le 23-04-2002 à 10:47:31    

Plusieurs solutions;
 
1. Problème de CGI
2. Problème de synchro ou problème d'accès concurent
3. Mauvais design coté java
 
mais je ne pense pas a un "bug" du JDK comme tu dis ...


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 23-04-2002 à 11:08:05    

En fait, quand je fais une requete a la fois, il n'y a pas de problème (ou plusieurs requêtes les unes derrières les autres).
 
Mais quand je crée des threads pour envoyer plusieurs requêtes en même temps, c'est à ce moment-là que ça plante de temps en temps.
 
Côté CGI, il semble bien accepter la requête (le log dit que toutes les requêtes sont bien arrivées), mais je ne sais pas par contre si le CGI traite entièrement la requête avant de rendre la main au Java.

Reply

Marsh Posté le 23-04-2002 à 11:10:38    

je pense que le problème viens plutot de là. Es-tu sur de bien avoir géré le cas des accès concurents côté CGI ?

Reply

Marsh Posté le 23-04-2002 à 11:16:05    

benou a écrit a écrit :

Es-tu sur de bien avoir géré le cas des accès concurents côté CGI ?  




 
Benou a raison, regarde de ce côté là.


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 23-04-2002 à 11:23:40    

Il y a certains accès concurrents côté CGI, mais les problèmes sont loggés pour les accès identifiés. S'il y en a d'autres, alors là...
 
Par contre, en regardant le log Windows du CGI, il y a lorsque le problème apparaît l'erreur 502 (le serveur est surchargé) qui est levé.
 
Maintenant, il faut savoir si c'est IIS qui est mal configuré ou si le serveur est vraiment trop surchargé.

Reply

Marsh Posté le 23-04-2002 à 11:30:36    

montre un peu ton code Java. Cela m'étonne que filenotfound soit levé finalement. Dans un cadre distant ca n'a pas bcp de sens...


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 24-04-2002 à 10:10:10    

Excuse DarkLord de répondre si tard,
 
mais avant de te montrer le code Java, il faut savoir qu'en changeant de machine pour le CGI (un poste client et non un serveur), le problème n'apparaît plus.
Donc, ça montre bien que ça vient certainement de la machine CGI et probablement pas du Java. Si le Java lève l'exception, c'est peut-être que le CGI ne renvoit pas de réponse.
Maintenant, il faut savoir d'où vient cette différence entre la machine locale (WinNT Workstation) et le serveur (WinNT Serveur), pourquoi le serveur lève l'erreur http 502 alors que le serveur ne semble pas surchargé.
 
Là, il faut des connaisseurs de Windows.

Reply

Marsh Posté le 24-04-2002 à 10:11:17    

je ne pense pas. Simplement ton serveur a plus de puissance et de réponse et donc le prob n'apparait plus car le cgi tient la charge.
 
A mon avis c'est un prob de syncrhonisation pur et dur.
 
A+


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 24-04-2002 à 10:14:04    

DarkLord a écrit a écrit :

A mon avis c'est un prob de syncrhonisation pur et dur.




ca en a tous les symptomes en tout cas ...

Reply

Marsh Posté le 24-04-2002 à 10:14:04   

Reply

Marsh Posté le 24-04-2002 à 11:59:06    

Non, le problème apparaît sur le serveur, pas sur la machine locale justement.
 
La logique voudrait que ce soit le contraire car le serveur est plus puissant (c'est un bi-proc), mais ça n'apparaît que sur le serveur.

Reply

Marsh Posté le 27-04-2002 à 20:15:52    

>> ca n'apparait que sur le serveur mais l'exception est levée chez le client non? Moi je parle de tes objets URLConnection et compagnie.
 
Et puis FileNotFoundExcetion pour récupérer un InputStream je n'ai jamais vu ca, désolé !
 
Si tu montrais ton code on verrait un peu plus clair ...
 
 :hello:


---------------
Just because you feel good does not make you right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed