How to solve the warnings in log4j???Continuable parsing error...The content of element type "log4j:configuration" must match

25,358

According to the error message, the DTD expects all elements in an order specified.

(renderer*,appender*,(category|logger)*,root?,categoryFactory?)


<?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
    <log4j:configuration>
        <appender name="console" class="org.apache.log4j.ConsoleAppender">
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="\n[%-6r] - %m" />
            </layout>
        </appender>

        <appender name="FILE" class="org.apache.log4j.FileAppender">
            <param name="file"
                value="D:/workspace_Testing/IdMUnitTests/logs/IdMUnitlog.log" />
            <param name="immediateFlush" value="true" />
            <param name="threshold" value="debug" />
            <param name="append" value="false" />
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%m%n" />
            </layout>
        </appender>

        <category name="se.jayway.ddsteps">
            <priority value="info"></priority>
        </category>

        <root>
            <priority value="INFO"></priority>
            <appender-ref ref="console" />
            <appender-ref ref="FILE" />
        </root>

    </log4j:configuration>

XML Configuration Order

So remember to write xml in that order

<renderer></renderer>

<appender></appender>

<plugin></plugin>

<logger></logger>

<category></category>

<root></root>

<loggerfactory></loggerfactory>

<categoryfactory></categoryfactory>
Share:
25,358
anuvabg
Author by

anuvabg

Updated on September 06, 2020

Comments

  • anuvabg
    anuvabg over 3 years

    Warnings are shown ...

    log4j:WARN Continuable parsing error 28 and column 23
    log4j:WARN The content of element type "log4j:configuration" must match
      "(renderer*,appender*,(category|logger)*,root?,categoryFactory?)".
    

    when execute the java files

        <?xml version="1.0" encoding="UTF-8" ?>
        <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
        <log4j:configuration>
            <appender name="console" class="org.apache.log4j.ConsoleAppender">
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="\n[%-6r] - %m" />
                </layout>
            </appender>
            <category name="se.jayway.ddsteps">
                <priority value="info"></priority>
            </category>
            <appender name="FILE" class="org.apache.log4j.FileAppender">
                <param name="file"
                    value="D:/workspace_Testing/IdMUnitTests/logs/IdMUnitlog.log" />
                <param name="immediateFlush" value="true" />
                <param name="threshold" value="debug" />
                <param name="append" value="false" />
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%m%n" />
                </layout>
            </appender>
    
            <root>
                <priority value="INFO"></priority>
                <appender-ref ref="console" />
                <appender-ref ref="FILE" />
            </root>
        </log4j:configuration>