簡體   English   中英

log4j.xml引用的文件log4j.dtd包含錯誤

[英]log4j.xml referenced file log4j.dtd contains errors

我們有一個包含ejbModule的項目,在ejbModule META-INF文件夾中有一個log4j.xml文件,如下所示

在此處輸入圖片說明

在此log4j.xml文件中,首先從Apache服務器中引用的dtd文件開始,格式如下

在此處輸入圖片說明

通常,此參考部分可以正常工作,但是從昨天開始,它突然無法編譯,也無法將ejbModule ear文件部署到weblogic中間件上。

顯示錯誤如下

Description Resource Path Location Type
Referenced file contains errors (http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd).  For more information, right click on the message in the Problems View and select "Show Details..." log4j.xml   /TEST_EJB/ejbModule line 1  XML Problem

在此處輸入圖片說明

然后我從給定的URL訪問引用的文件位置,如http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd將觀察到問題,因為

XML Parsing Error: syntax error
Location: http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd
Line Number 27, Column 1:<!ELEMENT log4j:configuration (renderer*, appender*,plugin*, (category|logger)*,root?,
^

在此處輸入圖片說明

更新:

甚至將格式更改為以下格式也無法解決問題

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN"
"http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd"
[
    <!-- Directory to write the log files to -->
    <!ENTITY logDir "C:/.../logs">
]
>

在此處輸入圖片說明

我已經檢查了作為Eclipse的鏈接:在log4j.xml中引用log4j.dtd ,實際上我們在他的問題中使用了相同的方式來引用log4j.dtd文件(聲明為成功的部分,在失敗的maven部分之前)

我有兩個問題:

(1)這個問題是否發生在Apache端(不是因為編碼或本地設置)?

(2)有什么辦法可以解決問題? 本地修復?

感謝您的任何想法。

使用以下代碼:-

<!DOCTYPE log4j:configuration PUBLIC
 "-//APACHE//DTD LOG4J 1.2//EN" "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">

很好,看起來像是由Apache服務上的log4j.dtd文件損壞引起的此問題,我從此鏈接下載log4j.dtd源文件,並將其放在如下的META-INF相同的文件夾中: 在此處輸入圖片說明

log4j.xml中將其稱為相對路徑

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM 
"log4j.dtd"
[
    <!-- Directory to write the log files to -->
    <!ENTITY logDir "C:/.../logs">
]
>

然后清理並編譯ejbModule ,問題消失了,並且可以部署到weblogic中間件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM