2013-10-28 4 views
5

मैंlog4j रूट लॉगर जानकारी नहीं मिला। है यह ठीक

java.net.URL url=Thread.currentThread().getContextClassLoader().getResource("MyLog4j.xml"); 
url=Thread.currentThread().getContextClassLoader().getResource("MyLog4j.xml"); 
PropertyConfigurator.configure(url); 

का उपयोग करते समय अपनी इस त्रुटि देने पर log4j डिबग के साथ इस कार्यक्रम चलाने विन्यास फाइल लोड हो रहा हूँ।

log4j: Reading configuration from URL file:/F:/TestApp/WEB-INF/classes/MyLog4j.xml 
log4j: Could not find root logger information. Is this OK? 
log4j: Finished configuring. 
log4j:WARN No appenders could be found for logger (MyServlet). 
log4j:WARN Please initialize the log4j system properly. 

मैं WebApp/वेब-INF/वर्गों में MyLog4j.xml डाल दिया है

यह मेरा MyLog4j.xml की सामग्री

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
     <appender name="appender" class="org.apache.log4j.DailyRollingFileAppender"> 
      <param name="DatePattern" value="'.'yyyy-MM-dd"/> 
     <param name="File" value="F:/MyLogs/MyAppLogs.log"/> 
     <param name="Append" value="true"/> 
      <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d [%t] %p - %m%n"/> 
     </layout> 
    </appender> 
    <root> 
     <priority value ="debug"/> 
     <appender-ref ref="appender"/> 
    </root> 
</log4j:configuration> 

मैं इस विषय पर कई सवाल खोज की है है एसओ पर और यह काम नहीं कर रहा है। क्या कोई मेरी मदद कर सकता है?

EDIT यदि मैं गुण फ़ाइलों का उपयोग करके कॉन्फ़िगर करने के लिए कोड बदलता हूं, तो यह ठीक काम कर रहा है। संपत्तियों की सामग्री

# This sets the global logging level and specifies the appenders 
log4j.rootLogger=INFO, myConsoleAppender 

# settings for the console appender 
log4j.appender.myConsoleAppender=org.apache.log4j.ConsoleAppender 
log4j.appender.myConsoleAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.myConsoleAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n 
+0

क्या आपके पास है: ? – united

+0

हां

उत्तर

7

होने सिर्फ इस एक का हल मिल गया है, मैंने सोचा कि मैं इस सवाल का जवाब यहाँ साझा करते हैं के बाद से यह सवाल अभी भी अनुत्तरित है फ़ाइल।

समस्या यह है कि आप MyLog4j.xml फ़ाइल को कॉन्फ़िगर करने के लिए PropertyConfigurator का उपयोग कर रहे हैं। एक्सएमएल फाइलों के लिए, आपको DOMConfigurator का उपयोग करने की आवश्यकता है।

DOMConfigurator.configure(url); 
संबंधित मुद्दे