log4j:ERREUR setFile(null,false) échec de l'appel
Iam face à une étrange erreur comme ci-dessous
log4j:ERROR setFile(null,false) call failed.
java.io.FileNotFoundException: \debug.log (Access is denied)
src/main/dev/environnement/dev/config.propriétés
logging.folder=D:/logs
log4j.xml
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="append" value="false"/>
<param name="file" value="${logging.folder}/debug.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
</layout>
</appender>
maven.xml (pas complète)
<filters>
<filter>src/main/environment/dev/config.properties</filter>
</filters>
quand iam directement à l'aide de <param name="file" value="D:/logs/debug.log"/>
, sa fonctionne bien, MAIS quand le matin à l'aide <param name="file" value="${logging.folder}/debug.log"/>
iam obtenir de l'exception ci-dessus..
Iam assez sûr que les valeurs de propriété de fichier capable de lire, puisque l'un de mes fichier java en mesure de lire les valeurs de cette propriété que le fichier.. alors pourquoi pas cette log4j.xml fichier en mesure de lire?
veuillez me suggérer ce qui s'est passé?
Il ressemble vraiment à la
le profil de " dev " est par défaut activé.. donc pouvez-vous me dire quel est la solution pour mon problème pls? et quand iam directement à l'aide de <param name="file" value="D:/logs/debug.log"/> , sa fonctionne très bien pour moi..
user3128668 - avez-vous trouver la réponse à ce qui précède?
config.properties
n'est pas lu avant l'attribut XML est d'arriver à interpréter. Je note aussi que vos chemins ne correspondent pas, et vous n'avez pas spécifié de l'environnement dans lequel vous êtes l'obtention de l'erreur (est-ce une configuration où dev
n'est pas activé?).le profil de " dev " est par défaut activé.. donc pouvez-vous me dire quel est la solution pour mon problème pls? et quand iam directement à l'aide de <param name="file" value="D:/logs/debug.log"/> , sa fonctionne très bien pour moi..
user3128668 - avez-vous trouver la réponse à ce qui précède?
OriginalL'auteur user3128668 | 2014-01-15
Vous devez vous connecter pour publier un commentaire.
En plus de Chandra réponse, j'ai vécu la même exception dans Eclipse sous Windows 7:
Mais il a fonctionné quand j'ai créé un dossier avec des autorisations pour mon userid:
J'ai aussi remarqué que le chemin d'accès doit être spécifié avec des barres obliques.
OriginalL'auteur Ade
Utilisation slash ('/') au lieu de slash ('\') où jamais vous êtes à la définition de ce chemin ${enregistrement.dossier}. C'est ce que l'erreur que je vois là-haut:
vous utilisez la barre oblique ici:
java.io.FileNotFoundException: \debug.log (Accès refusé)
donc votre chemin d'accès doit être quelque chose comme:
la journalisation.dossier = D:/logs/
OriginalL'auteur chandra pandey
Pour l'enregistrement j'utilise les propriétés de fichier et j'utilise la configuration suivante pour ce même problème. Comme je l'ai utiliser serveur tomcat, j'utilise
${catalina.base}
pour obtenir le tomcat répertoire de base.log4j.appender.FILE.File=${catalina.base}/logs/debug.log
Pour votre configuration xml le syntex pourrait être comme suit
Si vous utilisez Tomcat puis j'espère que Cela va fonctionner.
OriginalL'auteur Md Moin Uddin