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)*)>
任何想法如何,我可以修复命名空间,或安静的错误?