我怎么能使用spring docs记录java.util.Map

时间:2017-11-20 21:16:31

标签: spring spring-mvc spring-boot spring-restdocs

想象一下,我有下一堂课

public class MyDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    private String id;
    private Map<String, String> names;

    // public Getters and Setters
}

当我使用下一个代码用Spring记录它时

private static FieldDescriptor[] myDTOFields() {
  return new FieldDescriptor[] { 
    fieldWithPath("id").description("id description"),
    fieldWithPath("names").description("Names description") };
}

它没有用,我收到了错误。

  

org.springframework.restdocs.snippet.SnippetException:以下内容   有效载荷的一部分没有记录:

{
  "names" : {
    "en" : "test"
  }
}

那我怎么能用spring docs记录java.util.Map?

谢谢:)

1 个答案:

答案 0 :(得分:3)

作为described in the documentation,您可以使用PayloadDocumentation.subsectionWithPath(“names”)。这意味着REST Docs会将names及其包含的所有内容视为已记录在案。