Posez votre question Signaler

Stocker une image dans une BDD Mysql / jsp [Résolu]

java - Dernière réponse le 29 nov. 2011 à 09:24
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
Lire la suite 

Stocker une image dans une BDD Mysql / jsp »

13 réponses
Réponse
+1
moins plus
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
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour ;
Je ne sais pas ou se trouve problème dans le fichier logs qui existe dans Tomcat.
Et merci pour votre aide.
java - 16 nov. 2011 à 13:51
Je n'ai pas encore trouvée la solution
arth- 16 nov. 2011 à 16:39
Il faut regarder les logs Tomcat dans le dossier logs.
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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 :-)

Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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)
Ajouter un commentaire
Réponse
+0
moins plus
Comment je peux corrigée ces erreurs ? et merci
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour
J'ai trouvée la solution voici le lien :
http://www.roseindia.net/answers/viewqa/JSP-Servlet/18194-Jsp-Upload.html
Ajouter un commentaire
Ce document intitulé « Stocker une image dans une BDD Mysql / jsp » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?