Saya sedang menulis tes untuk aplikasi web Java Play menggunakan Play.test dan org.junit. Beberapa pengujian memanggil API kami melalui permintaan http. Saya membuat JsonNode setiap kali saya perlu menyertakan Badan Permintaan dengan permintaan saya.
Salah satu permintaan tersebut mengharuskan saya untuk memasukkan sebuah array.
Kode:
JsonNode arr = Json.newArray()
.add("Element 1")
.add("Element 2")
.add("Element 3");
sendNode =
Json.newObject()
.put("foo_id", "stringy string")
.put("name", "New foo")
.set("an_array", arr);
Saya tidak punya masalah menambahkan array ini. Kode di atas berfungsi apa adanya; Namun, jika saya menambahkan baris:
... //Same as above
sendNode =
Json.newObject()
.put("foo_id", "stringy string")
.put("name", "New foo")
.set("an_array", arr)
.put("another_field", "value")
Tiba-tiba ada kesalahan. Saya tidak dapat menambahkan bidang lagi ke objek.
Saya mencari cara untuk mencapai Objek Json yang diinginkan (Badan Permintaan HTTP):
{
foo_id: "123abc",
name: "thisthing",
an_array: ["element1", "element2", "element3"],
another_field: "fieldvalue"
}