使用XMLUnit(Java)比较包含实体的XML字符串
JDK1.7.0 第1.3单元 比较此控件XML字符串时:使用XMLUnit(Java)比较包含实体的XML字符串,java,xml,entity,entities,xmlunit,Java,Xml,Entity,Entities,Xmlunit,JDK1.7.0 第1.3单元 比较此控件XML字符串时: String controlXml = "" + "<client>" + " <name>Hello World</name>" + "</client>"; String testXml = "" +
String controlXml = "" +
"<client>" +
" <name>Hello World</name>" +
"</client>";
String testXml = "" +
"<client>" +
" <name>Hello World</name>" +
"</client>";
在控制台窗口中,我还发现以下错误:
[Fatal Error] :1:103: The entity "nbsp" was referenced, but not declared.
我不知道该怎么办
我调查了一下,得到了一些关于EntityResolver使用谷歌的信息,但这一切都很混乱
我需要将实体视为纯文本。从逻辑上讲,作为纯文本,它们是平等的
我尝试切换以下选项:
XMLUnit.setExpandEntityReferences(false); //tried true, false
XMLUnit.setIgnoreDiffBetweenTextAndCDATA(false); //tried true, false
什么都没用。
请帮帮我,我完全迷路了。谢谢 字符实体()和数字实体()之间似乎存在差异 与字符实体相比,XMLUnit在数字实体方面没有问题
我认为一个简单的字符实体到数字实体的过程应该足以解决我的问题。好吧,
不是XML处理器可以识别的,除非它被显式声明。在XML中只有五个实体;另一方面,HTML大约有250个。
XMLUnit.setExpandEntityReferences(false); //tried true, false
XMLUnit.setIgnoreDiffBetweenTextAndCDATA(false); //tried true, false