J'ai un dossier dans le dossier des ressources où je veux télécharger des fichiers multimédias. Mais je reçois constamment l'erreur 'No file or directory found'.Comment télécharger des fichiers dans le dossier des ressources dans le reste du printemps
Voici ce que j'ai dans mon contrôleur
@Autowired
ServletContext servletContext;
@RequestMapping(value = "/uploads", method = RequestMethod.POST)
public String insert(@RequestParam("file") MultipartFile file, HttpServletRequest request) throws IOException {
// String path = new
// ClassPathResource("/src/main/resources/uploads").getPath();
// FileCopyUtils.copy(file.getBytes(), new File(path));
String webappRoot = servletContext.getRealPath("/");
String relativeFolder = File.separator + "resources" + File.separator + "uploads" + File.separator;
System.out.println(webappRoot);
System.out.println(relativeFolder);
String filename = webappRoot + relativeFolder + file.getOriginalFilename();
FileCopyUtils.copy(file.getBytes(), new File(filename));
return "uploaded successfully";
}
Et voici l'erreur que je reçois constamment
SEVERE: Servlet.service() for servlet [api] in context with path [/ek-service] threw exception
java.io.FileNotFoundException: /home/ekbana/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ek-service/resources/uploads/2.jpg (No such file or directory)
J'ai cherché partout sur le web a essayé ResourceLoader et ClassPath. Mais toujours pas de succès à comprendre.
Vous ne pouvez pas, vous ne devriez pas vouloir cela. Le 'src/main/resources' est seulement là pour indiquer les sources non java. Lors de la compilation et de la création d'une guerre, il n'y a plus de dossier de ressources. C'est en fait la racine du classpath et vous ne pourrez pas le télécharger. –
Alors que dois-je faire? Je suis coincé ici depuis tôt le matin! – user3127109
Utilisez un chemin quelque part sur le disque. –