Hallo,
ich habe grade folgendes Problem:
Wir deployen ein WAR-File im JBoss und ich möchte auf eine Datei in diesem WAR zugreifen.
Aus einer Klasse in eben diesem WAR-File mache ich folgendes:
dann greift der ClassLoader auf das Verzeichnis <JBOSS>/server/default/conf zu. Ich frage mich jetzt natürlich wieso dieses conf-Verzeichnis? Ich hätte persönlich auf irgendein lib-verzeichnis getippt. Leider finde ich dazu keine weiteren Infos, wieso genau das so ist.
Das Problem ist mir nur zufällig über den Weg gelaufen beim durchprobieren. Eigentlich möchte ich ja auf die Datei im selben WAR zugreifen. Deswegen hier das eigentlich Problem.
Die Datei "client-config.xml" liegt im WAR unter WEB-INF. Ich mache also nun folgenden Aufruf:
das funktioniert soweit auch ohne Probleme, ich frage mich hierbei aber persönlich:
Geht es nicht einfacher als "../../../../" voranzustellen? Kann ich nicht z.B. direkt auf WEB-INF zugreifen, wie das z.B. der ServletContext machen würde?
Da sieht das relativ einfach so aus:
mfg Verjigorm
ich habe grade folgendes Problem:
Wir deployen ein WAR-File im JBoss und ich möchte auf eine Datei in diesem WAR zugreifen.
Aus einer Klasse in eben diesem WAR-File mache ich folgendes:
Java:
String fileName = "client-config.xml";
final URL resource = getClass().getClassLoader().getResource(fileName);
Das Problem ist mir nur zufällig über den Weg gelaufen beim durchprobieren. Eigentlich möchte ich ja auf die Datei im selben WAR zugreifen. Deswegen hier das eigentlich Problem.
Die Datei "client-config.xml" liegt im WAR unter WEB-INF. Ich mache also nun folgenden Aufruf:
Java:
String fileName = "client-config.xml";
final InputStream resource = getClass().getResourceAsStream("../../../../"+fileName);
Geht es nicht einfacher als "../../../../" voranzustellen? Kann ich nicht z.B. direkt auf WEB-INF zugreifen, wie das z.B. der ServletContext machen würde?
Da sieht das relativ einfach so aus:
Java:
getServletContext().getRealPath("WEB-INF");
mfg Verjigorm