Bonjour,
Je suis entrain de développer une application web en utilisant Struts. Je suis bloqué sur un écran de téléchargement de fichier, pouvez-vous m'aider à le résoudre. Merci.
Le message d'erreur : transfererFichier, FileNotFoundException, Fichier non trouvé : C:\temp (Accès refusé)
-------------------
Code serveur.xml : je stock le chemin du répertoire dans le contexte.
-----------------
Code :
- <Environment name="fichierImport" override="true" type="java.lang.String" value="C:\temp"/>
|
code de transfert de fichier :
--------------------------
Code :
- public void transfererFichier(FormFile fichierImport) throws FileImportException {
- log.debug("transfererFichier debut" );
- BufferedOutputStream bos;
- try {
- InitialContext ictx = new InitialContext();
- Context myenv = (Context) ictx.lookup("java:comp/env" );
- String fichierTmp = (String) myenv.lookupLink("fichierImport" );
- log.debug("Chemin fichier : " + fichierTmp);
- fichier = new File(fichierTmp);
- log.debug("fichier.getPath() : " + fichier.getPath());
- bos = new BufferedOutputStream(new java.io.FileOutputStream(fichier));
- log.debug("bos.toString() : " + bos.toString());
- byte[] datas = fichierImport.getFileData();
- log.debug("datas.length : " + datas.length);
- if (datas.length == 0) {
- throw new FileNotFoundException();
- }
- bos.write(datas);
- bos.flush();
- bos.close();
- } catch (FileNotFoundException e) {
- log.error("transfererFichier, FileNotFoundException, "
- + Constantes.MSG_FICHIER_NON_TROUVE + e.getMessage());
- throw new FileImportException(Constantes.MSG_FICHIER_NON_TROUVE);
- } catch (IOException e) {
- log.error("transfererFichier, IOException, "
- + Constantes.MSG_PB_ENTREE_SORTIE + e.getMessage());
- throw new FileImportException(
- Constantes.MSG_PB_ENTREE_SORTIE);
- } catch (NamingException e) {
- log.error("transfererFichier, NamingException, "
- + Constantes.MSG_PB_ENTREE_SORTIE + e.getMessage());
- throw new FileImportException(
- Constantes.MSG_PB_ENTREE_SORTIE);
- }
- log.debug("transfererFichier fin" );
- }
|