Enregistrement d'une image

bernidupont Messages postés 21 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 1 décembre 2012 - 8 janv. 2010 à 23:07
bernidupont Messages postés 21 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 1 décembre 2012 - 9 janv. 2010 à 14:47
Bonsoir ,
je suis en train de développer une application en java j2e.
Je voudrais enregistrer une image depuis un ordinateur client, sur mon serveur, dans un fichier qui s'appelerait "images" par exemple.
Pouvez svp me dire si cela est possible? Si oui, quelle est la commande à exécuter svp?
Merci.

2 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
9 janv. 2010 à 07:49
Salut,

Que ce soit une image, un document word ou un pdf, c'est le même principe : il faut que le client puisse envoyer un fichier au serveur.

Il te faut donc faire un formulaire avec un champ input de type file, qui lui permettra de sélectionner le fichier en question, et toi de ton côté, récupérer le flux binaire du fichier pour en faire ce que tu veux.

Voir la bibliothèque FileUpload d'apache pour te faciliter la tâche.
______________________________________
DarK Sidious
0
bernidupont Messages postés 21 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 1 décembre 2012
9 janv. 2010 à 14:47
Salut Darksidious,

merci pour ta réponse, tu as raison avec le flux binaire, mais dans le cas du web service que je veux créer cela ne marche pas. En effet, lorsque je veux utiliser le type inputstream par exemple dans une des fonctions de mon web service ça me met le message d'erreur :

"The service class "methodes.GestionLivres" does not comply to one or more requirements of the JAX-RPC 1.1 specification, and may not deploy or function correctly."

Visiblement, il n'accepte que les types primaires comme int, String comme paramètres de mes fonctions...

Sans mon web service, j'arrive enregistrer une image dans ma base avec ce code :

File monImage = new File(location);
FileInputStream istreamImage = new FileInputStream(monImage);
try
{
PreparedStatement ps = conn.prepareStatement(" insert into image values (?)" ) ;
try
{
ps.setBinaryStream(1, istreamImage, (int) monImage.length());
ps.executeUpdate();
}
finally
{
ps.close();
}
}
finally
{
istreamImage.close();
}


Mais avec mon web service, il n'accepte pas le type File ou FileInputStream...
Serais tu comment pourrais je faire?
0
Rejoignez-nous