2

<div>&nbsp;</div>XmlUnit を使用するような XHTML コードをテストする必要があります。Diff コンストラクターは次のように教えてくれます。

org.xml.sax.SAXParseException: エンティティ "nbsp" が参照されましたが、宣言されていません。

nbspエンティティが XML で定義されていないことはわかっていますが、HTML コードは私のものではないため、#160で置き換えることはできません(それ以外の場合は明らかな解決策です)。

を追加して HTML コードを変更したくありません<!DOCTYPE html [ <!ENTITY nbsp "&#160;"> ]>。変更せずにそのままにしておくことをお勧めします。

この問題を回避する別の方法はありますか? HTMLDocumentBuilderXmlUnit にクラスがあることは知っていますが、適切なドキュメントや例を見つけることができませんでした。

4

2 に答える 2

0

MathML DTDを参照する DOCTYPE 宣言を使用できます。

<!DOCTYPE math 
    PUBLIC "-//W3C//DTD MathML 3.0//EN"
           "http://www.w3.org/Math/DTD/mathml3/mathml3.dtd">

または同じもののローカルコピー。

于 2013-05-10T16:53:16.603 に答える