Bonjour, enfin bonsoir.
Je suis actuellement en train de faire une application Web EJB3 + JSF + HIBERNATE3.
J'ai également fait de jolis boutons en javascript qui charge des images différentes en fonction des évènements onmouseover et onmousout.
Le soucis c'est que le navigateur accuse certaines lenteurs lors du premier affichage, normal l'image n'est pas encore chargée dans le cache.
Donc j'ai fais un petit javascript qui prend une liste de chemins d'images et qui charge le tout lors de l'event onload. Le soucis, c'est que je n'ai pas envie d'indiquer a mon script toutes la liste des images du menu (elles sont nombreuses). Donc j'ai fait un petit controller déclaré dans mon faces-config.xml qui à une méthode getIhmPictures() et qui renvoi un jolie String avec le path de chacune des images se trouvant dans "/pictures/ihm" et bien évidement dans les arbo sous-jacentes (une arbo par langue)
Magnifique! ma méthode marche nikel quand je fais appel dans un "main".
Mais lors de l'execution de l'EAR ce n'est pas tout à fait la même chose...
Bref! Comment faire pour accéder à mon répertoire picture dans une méthode de mon controller jsf pour que cette dernière puisse me retourner la chaine contenant le path de chacune des images?
ou plus simplement:
Comment accéder à la racine de mon WAR depuis un controller jsf?
Merci d'avance
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 public class PictureLoader{ public static String getMenuPictures(String path) throws IOException { DirectoryReader dr = new DirectoryReader(); String out = ""; for (File file : dr.getListFilesByType(C'est ICI que ça coince...+"pictures/ihm/menu", "(\\w*_\\d*)(.jpg)")) { out.concat(file.getPath()+","); } return out; } }
Partager