Tôi muốn kết nối log4j.xml với log4j.xsd (lược đồ xml). Dự án không có bất kỳ cảnh báo hoặc lỗi nào. Nhưng khi tôi bắt đầu nó, Ihave console như cảnh báo:log4j: WARN Phần tử gốc tài liệu "log4j: configuration", phải khớp với DOCTYPE root "null"
log4j: WARN Liên Tiếp phân tích lỗi 6 và cột 66.
log4j: WARN Document yếu tố gốc "log4j: Cấu hình", phải phù hợp với DOCTYPE root "null".
log4j: WARN Liên Tiếp lỗi phân tích cú pháp 6 và cột 66.
log4j: WARN tài liệu không hợp lệ: không có ngữ pháp được tìm thấy.
Tôi nghĩ, sự cố trong lược đồ Vị trí. Nhưng tôi không biết, làm thế nào để viết nó bình thường. Hy vọng cho lời khuyên của bạn.
log4j.xml của tôi:
<?xml version="1.0" encoding="UTF-8" ?>
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
debug="false"
xsi:schemaLocation="http://www.example.org/log4j log4j.xsd ">
<appender name="logFileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="E:/Codes/HorseRacing/logFile.log"/>
<param name="MaxFileSize" value="1MB"/>
<param name="MaxBackupIndex" value="5"/>
<param name="Encoding" value="UTF-8"/>
<layout class="org.apache.log4j.EnhancedPatternLayout">
<param name="ConversionPattern" value="%d{ISO8601} [%-5p][%-16.16t][%40.40c] - %m%n"/>
</layout>
</appender>
<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Encoding" value="Cp866"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ISO8601} [%-5p][%-25.25l][%10.10c] - %m%n" />
</layout>
</appender>
<logger name="appLogger">
<level value="INFO"/>
<appender-ref ref="logFileAppender"/>
<appender-ref ref="ConsoleAppender"/>
</logger>
</log4j:configuration>
Và log4j.xsd tôi:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema attributeFormDefault="unqualified"
elementFormDefault="qualified" version="1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="configuration">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="appender">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="param">
<xsd:complexType>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="value" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="layout">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="param">
<xsd:complexType>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="value" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="class" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="class" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="logger">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="level">
<xsd:complexType>
<xsd:attribute name="value" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element maxOccurs="unbounded" name="appender-ref">
<xsd:complexType>
<xsd:attribute name="ref" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="debug" type="xsd:boolean" />
<xsd:attribute name="schemaLocation" type="xsd:string" />
</xsd:complexType>
</xsd:element>
</xsd:schema>
<logger name="appLogger">
<level value="INFO"/>
<appender-ref ref="logFileAppender"/>
<appender-ref ref="ConsoleAppender"/>
</logger>
</log4j:configuration>
T.B. Xin lỗi cho tiếng anh của tôi ...
Tôi đang sử dụng log4j-1.2.17.jar gì nên Tôi kiểm tra hay kiểm tra? – dmgmyza
Thanx rất nhiều! Tôi đã tải xuống 1.2.9 - và thay đổi xác thực thông qua DTD. mọi thứ ok. – dmgmyza
Vì vậy, bạn đã hạ cấp? –