我正在尝试通过这样的放心验证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版的保证版。
答案 0 :(得分:2)
here也回答了类似的问题。简而言之,答案描述了使用disableLoadingOfExternalDtd()
来让RestAssured忽略XML中的文档类型定义。
通常,DTD将(使用外部定义)描述定义为cXML
的元素的结构布局。