Stocker des fichiers xml dans le dossier de ressources (de la GUERRE), lecture de code
J'ai différents fichiers XML dans mon " src/main/ressources dossier, et j'aimerais les lire à partir de mon webapplication.
File f = new File("file1.xml");
f.getAbsolutePath();
Le code est exécutée à l'intérieur d'un WebService, et ce imprime 'C:\Users\Administrator" quand je regarde à l'intérieur de l'Tomcat-serveur-sortie. Ma solution actuelle est de mettre le 'file1.xml'-documents à l'extérieur de la GUERRE, dans 'C:\'-dossier, mais de cette façon, ma GUERRE n'est pas transférable.
J'ai aussi essayé de
<bean name="webService">
<property name="document">
<value>classpath:file1.xml</value>
</property>
</bean>
Mais qui se contente d'afficher "classpath:file.xml" sans l'analyser.
Ce qui concerne,
Pete
OriginalL'auteur JavaPete | 2010-06-04
Vous devez vous connecter pour publier un commentaire.
Si vous êtes en utilisant le standard de maven2 guerre de l'emballage, de votre file1.xml est copié dans le répertoire WEB-INF/classes au sein de votre warfile.
Vous pouvez accéder à ce fichier via le classpath.
Mais pourquoi avez-vous besoin de passer par currentThread().getContextClassLoader() ? Est-il une sorte de restriction de sécurité dans votre environnement ou ai-je raté quelque chose? Êtes-vous la construction de votre webapp en utilisant le standard de maven guerre plugin ou par l'intermédiaire d'une assemblée ou autrement?
OriginalL'auteur Adriaan Koster
Si vous placez le fichier dans un répertoire WEB-INF (ou dans WEB-INF lui-même), alors vous pouvez le lire en utilisant le
ServletContext
'sgetResourceAsStream
méthode:OriginalL'auteur John Topley
Vous pouvez mettre le chemin de l'info dans les propriétés du fichier dans le chemin d'accès /WEB-INF/classes - et de charger cette info dans l'application à l'exécution.
Avoir une valeur différente pour cette propriété de chemin d'accès, vous pouvez utiliser l'option de profils maven ou n'importe quel autre outil - de sorte que les différents environnement de résultats dans le fichier WAR ayant de bonnes propriétés de la valeur pour le chemin d'accès adapté pour l'environnement.
OriginalL'auteur techzen