Est-il possible d'accéder à un dossier non emballé dans le fichier war via GET?Accès aux dossiers en dehors du package de l'application (fichier .ear/.war)
Vous avez probablement défini quelque chose dans web.xml?
Est-il possible d'accéder à un dossier non emballé dans le fichier war via GET?Accès aux dossiers en dehors du package de l'application (fichier .ear/.war)
Vous avez probablement défini quelque chose dans web.xml?
Oui, vous pouvez utiliser la propriété (dans Glassfish) pour servir des fichiers (comme des images) de l'extérieur de la guerre.
Cette propriété peut être un sous-élément d'un élément d'application soleil web dans le fichier sun-web.xml ou un élément serveur virtuel dans le fichier domain.xml
Voir ici: http://docs.sun.com/app/docs/doc/820-4496/geqpl?l=en&a=view
exemple:
<property name="alternatedocroot_1" value="from=/images/* dir=/usr/gifs"/>
Vous pouvez ajouter un servlet t o votre application qui lit le fichier.
Exemple (a besoin la gestion des erreurs)
public class FileDownloadServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String filename = request.getParameter("filename");
InputStream is;
try {
is = FileUtils.openInputStream(new File(filename));
byte[] buf = new byte[ 8192 ];
int bytesRead;
while ((bytesRead = is.read(buf)) != -1)
os.write(buf, 0, bytesRead);
}
catch(...) {
}
finally {
is.close();
os.close();
}
response.setContentType("application/octet-stream");
}
}
+1 pour une bonne alternative. Merci ;) – Bogdan
Cela ressemble à ce que je cherche. Merci. – Bogdan