问题描述:
当使用log4j.xml配置日志时,Myeclipse验证该xml文件时,出现警告"The file cannot be validated as the XML Schema "D:\workspace\Log4jDemo\src\log4j.dtd (系统找不到指定的文件。)" that is specified as describing the syntax of the file cannot be located."
原因分析:
log4j.xml中使用log4j的DTD验证其格式的有效性"<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">",而系统或项目中找不到log4j.dtd,因此出现以上警告。
解决方法:
使用解压缩工具解压log4j.jar文件,找到org/apache/log4j/xml目录下的log4j.dtd文件。
方法1.将log4j.dtd拷贝到Myeclipse的dtd目录(Myeclipse8.5位于Genuitec\Common\plugins\com.genuitec.eclipse.j2eedt.core_8.5.0.me201003231033\catalog-dtd,Myeclipse6.6位于MyEclipse 6.6\myeclipse\eclipse\plugins\com.genuitec.eclipse.j2eedt.core_6.6.0.zmyeclipse660200810\catalog-dtd)中,然后通过"Preferences->Myeclipse->Files and Editors->XML->XML Catalog"定义一个User Specified Entries,Location指定为catalog-dtd下的log4j.dtd,Key Type选"System ID",Key填"log4j.dtd",然后执行“Project-->Clean”命令。
方法2.将log4j.dtd拷贝到项目的src目录下,执行“Project-->Clean”命令。
推荐使用方法1,一劳永逸,对所有项目均有效。
分享到:
相关推荐
在Log4j的上下文中,`log4j.dtd`是Log4j配置文件(通常命名为`log4j.properties`或`log4j.xml`)的DTD,它定义了配置文件中可以使用的元素、属性及其结构,确保配置文件的合法性。 在Log4j的配置文件中,我们可以...
此声明定义了`log4j:configuration`元素遵循的DTD(Document Type Definition),用于确保XML文件的结构符合Log4j的要求。 ##### 3. `log4j:configuration`根元素 ```xml <log4j:configuration xmlns:log4j=...
`contextInitialized`方法会在Web应用初始化时被调用,它会查找`web.xml`中设置的`log4jConfigLocation`参数来确定`log4j.xml`的位置。如果文件路径以`.xml`结尾,那么使用`DOMConfigurator.configure()`来解析XML...
XML 声明用于指定 XML 文档的版本和编码方式,而 DOCTYPE 则用于指定文档类型定义(DTD),以便验证 XML 文档的正确性。在本例中,XML 声明指定了 UTF-8 编码,而 DOCTYPE 则指定了 Spring 框架的 Bean 定义 DTD。 ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="com.unmi.all" class="org.apache.log4j.RollingFileAppender"> <!-- ...
例如,Hibernate的配置文件`hibernate.cfg.xml`、Struts2的配置文件`struts.xml`以及Log4j的配置文件`log4j.properties`或`log4j.xml`,都可以通过关联相应的DTD文件来实现自动提示。 配置Eclipse以使用这些DTD文件...
在进行Log4j的配置时,主要有两种常见的配置方式:**.properties** 和 **.xml** 文件。这两种方式各有特点,可根据实际需求选择。 ##### 1. .properties 文件配置 .properties 文件配置较为简单直观,适合初学者...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="A1" class="org.apache.log4j.ConsoleAppender"> ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="XMLAppender" class="org.apache.log4j.FileAppender"> ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="A1" class="org.apache.log4j.ConsoleAppender"> <layout class="org...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration> <appender name="stdout" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false"> ``` 此部分定义了XML文档的基本信息和DTD(Document Type Definition)的...
这个示例将介绍如何配置和使用 Log4j,包括使用 `.properties` 和 XML 配置文件,以及在不验证 XML 配置时的处理策略。 1. **Log4j 的基本概念** - **Logger**: 日志器是 Log4j 的核心组件,用于生成日志消息。你...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd">` 3. **根元素**:`<log4j:configuration>`元素包含了所有其他配置元素。 - `xmlns:log4j='http://jakarta.apache.org/log4j/'` #### 三、Appender配置 Appender...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="console" class="org.apache.log4j.ConsoleAppender"> ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="org.zblog.all" class="org.apache.log4j.RollingFileAppender"> ...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration> <appender name="FILE" class="org.apache.log4j.FileAppender"> <param name="File" value="log.txt"/> <layout class="org.apache....
xml声明用于指定文档类型和编码方式,而DTD声明用于指定Log4j的命名空间和DTD文件的位置。 配置元素 Log4j配置文件中包含多种配置元素,每种元素都有其特定的作用: * `appender`元素:定义一个日志输出目的地,...
DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender"> ...