の応答フィールドを文書化しますは、どのように私はこのようなオブジェクトを返すRESTサービスのドキュメントをやっているマップ(HashMapの)などのオブジェクト
Map<String, HashMap<Long, String>>
と私は、そのようなオブジェクトの応答フィールドを記述する方法を見つけることはありません。
私のコードを見てみましょう。
サービス:
@RequestMapping(value = "/data", method = RequestMethod.GET)
public Map<String, HashMap<Long, String>> getData()
{
Map<String, HashMap<Long, String>> list = dao.getData();
return list;
}
私のユニット・テストベースのドキュメント:私はのためのすべてのソリューションを持っていなかったので、
@Test
public void testData() throws Exception
{
TestUtils.beginTestLog(log, "testData");
RestDocumentationResultHandler document = document(SNIPPET_NAME_PATTERN ,preprocessResponse(prettyPrint()));
document.snippets(
// ,responseFields(
// fieldWithPath("key").description("key description").type("String"),
// fieldWithPath("value").description("value as a Hashmap").type("String"),
// fieldWithPath("value.key").description("value.key description").type("String"),
// fieldWithPath("value.value").description("value.value description").type("String"),
// )
String token = TestUtils.performLogin(mockMvc, "user", "password");
mockMvc
.perform(get(APP_BUILD_NAME + "/svc/data").contextPath(APP_BUILD_NAME)
.header("TOKEN", token)
)
.andExpect(status().is(200))
.andExpect(content().contentType("application/json;charset=UTF-8"))
.andExpect(jsonPath("$").isMap())
.andDo(document);
TestUtils.endTestLog(log, "testData");
}
レスポンス・フィールドのコードを見ることができるようにコメントアウトされそれはまだ。私はそれに取り組んでいますが、本当にあなたの助けに感謝します。前もって感謝します。
文書化しようとしているJSONの外観はどうなっていますか? –
このリンクのJSONを見てください: https://dl.dropboxusercontent.com/u/64513069/JSONData_Translation.txt データは大きいですが、私はちょうどオブジェクトマップの3つの事を文書化する必要があると思います> –
こんにちはAndy、 オブジェクトリストの応答フィールドの説明を作成できます。これは以前のようにMAPではなくListを使って変更する必要があります。しかし問題は、MAPが必要なことです。レスポンスフィールドの説明にMAPを使用できるかどうかについては、おそらくあなたの意見を共有できますか? これが不可能な場合は、応答フィールドの説明をスキップして他の解決策を考え出すことができます。前もって感謝します。 –