org.xml.sax.SAXParseException:已引用实体“ ndash”,但未声明

问题描述 投票:4回答:2

我正在解析以下内容...

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tox:message SYSTEM "http://tox.sf.net/tox/dtd/tox.dtd">
<tox:message xmlns:tox="http://tox.sourceforge.net/">
<tox:model owner="scott" package="queue" function="appendFact">
<tox:parameter value="  By John Smith   &ndash; Thu Feb 25, 4:54 pm ET&lt;br&gt;&lt;br&gt;NEW YORK (Reuters) &ndash; Nothing happened today."/>
<tox:parameter value="10245"/>
</tox:model>
</tox:message>

...使用saxon9.jar,但得到了...

org.xml.sax.SAXParseException: The entity "ndash" was referenced, but not declared.

我如何“声明”一个实体进行解析?我如何能够预期所有潜在实体?

xml exception entity saxon saxparser
2个回答
1
投票
您在DTD中声明了它。由于您使用的是外部DTD,因此必须为您声明它。 tox.dtd是否包含ndash的声明?

0
投票
我认为您应该使用EntityResolver
© www.soinside.com 2019 - 2024. All rights reserved.