0
我有一個xml配置文件,它可以在Java中正常工作,並且我試圖在腳本中使用XMLStarlet解析出它的一些信息。我得到的錯誤是:使用XMLStarlet時出現命名空間錯誤
xml sel -t -m "Config/Application" -v "@rmiPort" -n config.xml
namespace error : Namespace prefix log4j on configuration is not defined
<log4j:configuration>
^
config.xml中有這樣的聲明:
<?xml version="1.0"?>
<!DOCTYPE Config SYSTEM "../../../dtds/Config.dtd">
<Config>
...
<Logger>
<log4j:configuration>
...
config.dtd看起來是這樣的:
<?xml version="1.0" encoding="UTF-8" ?>
<!ENTITY % log4j:configuration SYSTEM "log4j.dtd">
%log4j:configuration;
...
<!ELEMENT Logger ((log4j:configuration)*)>
任何想法如何,我可以修復命名空間,或安靜的錯誤?