6

Tengo en GuardarImagenes.java:

File file = new File(getServletContext().getContextPath()+"/img", "IMG_29.JPG");
Files.copy(e2, file.toPath(), StandardCopyOption.REPLACE_EXISTING);

Donde e2 es un InputStream válido

Mis carpetas están así:

introducir la descripción de la imagen aquí

Cómo hago para que mi imagen que estoy moviendo (e2) se mueva satisfactoriamente a la carpeta img de mi proyecto?

Ahora mismo el error que me marca es este en la línea del Files.copy introducir la descripción de la imagen aquí

Ruslan López
  • 10,060
  • 11
  • 35
  • 68
user2930137
  • 1,351
  • 14
  • 30
  • 2
    Tu error indica que no ubica el archivo IMG_29.JPG, en tu código te refieres a otro (IMG_25), ¿Valida si existe IMG_29.JPG y si tiene que ver con **e2**? – juliocpiro Aug 29 '17 at 22:47
  • Perdón, es que le error lo saqué de una nueva ejecución. Pero ya lo edité. El problema está en que no encuentra la ruta y no sé cómo referenciarla a la carpeta imágenes.Cuál es la ruta para llegar a mi carpeta img desde java? – user2930137 Aug 30 '17 at 13:48
  • Si pulsas el botón derecho del ratón sobre el nombre del proyecto (en tu caso es multiSubida) y en el menú emergente que sale vas abajo del todo y pulsas en Properties, podrás ver bastante información de las rutas. Web Pages Folder es web y WEB-INF Folder es web/WEB-INF. En tu caso debes ir a multiSubida\web\img y así te encontrará el archivo sin problema. Recuerda que Web Pages es web solamente. Espero haberte aclarado las dudas. Un saludo. – Robert Gutierrez Apr 24 '22 at 18:16

1 Answers1

0

Por lo que puedo ver estas haciendo referencia a \multiSubida\img... esa ruta no es correcta debe ser \multiSubida\web\img.

Además, tengo entendido que para guardar imágenes en una carpeta con java necesitas la ruta absoluta y no la relativa. Por ejemplo "C:\Users\Usuario\multiSubida\web\img". Te recomiendo que en el explorador de archivos consultes la ruta absoluta de la carpeta "img".