bonjour,
mon application est un site web fait avec struts,jsp,servlet.
j'essaie de faire l'upload des images vers un dossier "img" situé sur le serveur.à partir d'un input (type:file) je récupère le fichier à envoyer sur le serveur (son mon,datan...).je travaille en local :si j'associe au dossier (dans lequel je ferai l'insertion )un chemin absolu (de type c:/monProjet/img), ça marche .mais du moment ou le travail n'est plus en local (serveur distant),je sais plus quoi faire.
j'ai essayé de remplacer ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String path="C:/monProjet/img
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String path="http://localhost:8080/monProjet/img"
Mais il m'affiche chemin introuvable.
j'ai essayé aussi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String path="//localhost:8080/monProjet/img"
voila mon code:

dans la .jsp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 <form name="ff" action='UploadAction.do?action=upload&maxIdAct=${maxIdAct}' method="post" enctype="multipart/form-data">                
    <input type="file" name="fichier" id="fichier" size="50" maxlength="250"/>        
        <input type="submit"  />         
        </form>
dans ma .strutsConfig.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<form-bean name="frmUpload" type="projet.site.forms.UploadForm" >
   <form-property name="fichier" type="org.apache.struts.upload.FormFile"/>
  </form-bean>
<action path="/UploadAction" type="projet.site.actions.UploadAction" name="frmUpload" scope="session" validate="false" >
 <forward name="upload" path="upload.image"  />    
 <forward name="ficherEnvoye" path="----"  /> 
 </action>
et dans ma classe .java

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
       UploadForm uploadform =(UploadForm)actionForm;												        	 
		            FormFile formFile = (FormFile) uploadform.getFichier();
 
		            //String path="C:/monProjet/img/" ça marche mais ça doit pas être comme ça car je ne sais pas l'emplacement du dossier sur le serveur lors du deploiment		          		            		    	           		           		 		        
		            String path="http://localhost:8080/monProjet/img/";
		            // le path =le chemin du dossier ou vont etre stocké les images
		            //je pense qu'il doit etre relatif et non pas absolue,lors du déploiment on remplace localhost par l'Ip du serveur
		            String fileName = formFile.getFileName();  		           
		            String contentType = formFile.getContentType();	              		                    		            		           		            		            
		            File fileToCreate = new File(path, fileName);			           
					          try {
					        	  FileOutputStream fileOutStream = new FileOutputStream(fileToCreate);
						          fileOutStream.write(formFile.getFileData());
						          fileOutStream.flush();
						          fileOutStream.close();
						          forward="fichierEnvoye";
 
							} catch (Exception e) {																
								e.printStackTrace();								
							}
//

Merci infinement de m'aider