Stocker une image dans une BDD Mysql / jsp

[Résolu/Fermé]
Signaler
-
 java -
Bonjour,
J'ai rencontré un problème au niveau stockage des images dans une base de données MySQL
Quand je déployé mon projet je le teste dans un autre ordinateur au réseau il m'affiche le message des erreurs :
Java.io.FileNotFoundException :monimage.jpg (le fichier spécifié est introuvable)
Au niveau localhost je reconnais aucun problème mais au niveau réseau impossible d'ajouter l'image dans la BDD
J'ai créé mon projet avec Servlet /jsp , BDD MySQL
Voila le code d'ajouter une image dans BDD MySQL/ jsp :
Ce code existe dans un Servlet :
*****
FileInputStream fis;
String imgs=request.getParameter("imgs");
//imgs c'est le chemin d'image dans la page jsp
File image = new File(imgs);
fis = new FileInputStream(imgs);
prst.setBinaryStream(2, fis, (int) image.length());

***

Aide de moi s'il vous plait de trouvée la solution et merci d'avance



11 réponses

Bonjour
Première mot merci beaucoup arth pour votre réponse, deuxième chose quand je teste mon application je ne le teste pas dans mon ordinateur« localhost »mais dans un autre avec mon adresse IP pour accéder a la base de donnée qui est existe dans mon poste donc comment je peux régler ce problème .Servlet ne fonctionné pas ou quoi ?
Problème existe leur d'ajout, ajouter une image existe dans autre ordinateur dans ma BDD MySQL il ne connaît pas le chemin d'image donc il m'affiche le message « FileNotFound »
Merci d'avance
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Bonjour ;
Je ne sais pas ou se trouve problème dans le fichier logs qui existe dans Tomcat.
Et merci pour votre aide.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Je n'ai pas encore trouvée la solution
Messages postés
9367
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 335
Il faut regarder les logs Tomcat dans le dossier logs.
Bonjour
J'ai trouvée la solution voici le lien :
http://www.roseindia.net/answers/viewqa/JSP-Servlet/18194-Jsp-Upload.html
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
9367
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 335
Ceci est normal.

Ta servlet va récupérer ton fichier en local.

Hors quand celle-ci est sur ton serveur, elle va essayer d'ouvrir le fichier sur le serveur, et non plus sur ton poste.

Du coup, FileNotFound.
Messages postés
9367
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 335
Donc pour récapituler, j'ai pas tout saisi.

Lorsque vous exécuté la Servlet, celle-ci est déployée sur votre poste dans Tomcat ou autre? Ou sur un poste distant?

La base de données elle est sur quel poste?

Avec un schéma ce serait bien en fait :-)

Bonjour,
Merci arth pour votre réponse

*********schéma********

(Mon ordinateur)(Serveur)
Quand je fais l'insertion ici je ne reconnais aucun problème la BDD existe ici dans ce poste
|
|
|

(Ordinateur 2)(Client)
Qui ne comporte pas BDD, j'ai fait le test dans ce poste, l'insertion ne fonctionne pas « FileNotFound »

*******
et merci d'avance
Messages postés
3
Date d'inscription
mardi 16 septembre 2008
Statut
Membre
Dernière intervention
1 novembre 2011

Bjr
pour bien précisé le problem et mieux comprondre

PC1 (apatche,BDD) = serveur et client
lors de l'inserstion depui PC1 l'image s'ajoute sans blém

PC2 (poste distant ) = clien
PC2 execute l'ajout mais l'erreur Java.io.FileNotFoundException :monimage.jpg (le fichier spécifié est introuvable) ce déclanche
java est ce que j'ai bien compris ton probléme
aussi j'ai le même probléme
merci pour votre aide
Messages postés
9367
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 335
OK donc c'est pas comme je pensais :-)

Le mieux serait alors de regarder les logs de Tomcat, dans le fichier des erreurs pour comprendre quel fichier il veut ouvrir lors de l'exécution de la servlet depuis le poste client.
Bonjour
Voila ce que me donne le fichier logs qui existe dans Tomcat :

17 nov. 2011 10:49:58 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_17\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jdk1.6.0_17\bin
17 nov. 2011 10:49:58 org.apache.coyote.http11.Http11Protocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
17 nov. 2011 10:49:58 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 813 ms
17 nov. 2011 10:49:58 org.apache.catalina.core.StandardService start
INFO: D?marrage du service Catalina
17 nov. 2011 10:49:58 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.18
17 nov. 2011 10:49:58 org.apache.catalina.core.StandardContext resourcesStart
GRAVE: Erreur lors du d?marrage des Resources statiques
java.lang.IllegalArgumentException: Le document base E:\Servlet\app1 n'existe pas ou n'est pas un r?pertoire lisible
at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:141)
et merci beaucoup arth.
Messages postés
9367
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 335
Les erreurs suivantes sont à corriger :

GRAVE: Erreur lors du d?marrage des Resources statiques
java.lang.IllegalArgumentException: Le document base E:\Servlet\app1 n'existe pas ou n'est pas un r?pertoire lisible
at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:141)
Comment je peux corrigée ces erreurs ? et merci