probleme avec getResource dans un jar [java] - Java - Programmation
Marsh Posté le 09-09-2004 à 15:03:30
C'est quoi le code que tu utilises pour récupérer le contenu du fichier xslt ? si tu essayes de passer par un File comme le laisse suposer ton log, ca ne peut pas marcher.
Il faut que tu fasses des trucs du style
InputStream streamDuXslt = this.getClass().getRessourceAsStream("/com/onera/jeff/wdview/GetSections.xslt" );
Marsh Posté le 09-09-2004 à 15:26:23
Extra, super, ça marche!!!
tu m'as enlevé une énorme poutre du pied
Milles merci.
Juste une précision, quand je récupère une icone:
setIconImage(Toolkit.getDefaultToolkit().getImage(WdView.class.getResource("icone.jpg" )));
ça marche, est ce que c'est le getImage qui sait gérer un File ?
Marsh Posté le 09-09-2004 à 22:48:51
Là tu passe pas par un File mais par une URL ... L'url est une façon de localiser une ressource très souple : ca peut être un fichier, une ressource disponible sur internet, un fichier compressé dans un jar, etc ... Cette url permet d'accéder au flux (le InputStream) de façon banalisée en faisant un openConnection (si je me souviens bien). C'est pour ca que dans le Toolkit ils ont utilisé en entrée une URL pour récupérer une image : à partir d'une URL, ils peuvent récupérer le contenu binaire.
Mais dans ton cas, c'est une étape intermédiaire inutile puisque ce qui t'intéresse c'est directement le flux binaire => autant appeler getResourceAsStream() qui retourne un Inputstream plutot que getRessource qui retourne une URL ...
Marsh Posté le 10-09-2004 à 08:12:32
Merci pour les précisions, j'ai encore beaucoup à apprendre du Java...
Marsh Posté le 09-09-2004 à 14:58:44
Bonjour a tous,
j'ai une appli sous forme de jar et je voudrais utiliser un fichier xslt qui se trouve dans mon archive.
Je fais un getResource comme pour un .jpg mais ça ne marche pas.
voir ci-dessous :
- lancement du jar
- println de l'url donné par getResource pour une l'icone
- println de l'url donné par getResource pour le fichier xslt
- planté à l'utilisation de l'url
java -jar wdview.jar
jar:fileC_Java/WdView4/WinInstall/WdView.jar!/com/onera/jeff/wdview/icone.jpg
jar:fileC_Java/WdView4/WinInstall/WdView.jar!/com/onera/jeff/wdview/GetSections.xslt
file:\C:\_Java\WdView4\WinInstall\WdView.jar!\com\onera\jeff\wdview\GetSections.xslt (Syntaxe du nom de fichier, de rÚpertoire ou de volume incorrecte)
java.lang.Exception: MyXmlSectionBox error : java.lang.NullPointerException
est ce que je peux récupérer un fichier xslt dans le jar ?
(je n'ai jamais essayé avec autre chose que des images)