我试图像这样放心地验证XML响应:
.then().body("some.xml.path", is("abc"));
但是,我得到的是SAXParseException:
当“http://apache.org/xml/features/disallow-doctype-decl”功能设置为true时,不允许使用DOCTYPE。
响应从这样开始:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.021/cXML.dtd">
<cXML ...
为什么我得到这个例外?我应该改变什么?
我正在使用版本3.2.0的放心。
here也回答了类似的问题。简而言之,答案描述了使用disableLoadingOfExternalDtd()
让RestAssured忽略XML中的文档类型定义。
通常,DTD将描述(使用外部定义)定义为cXML
的元素的结构布局。