Мне нужно изменить мой код так, чтобы он принимал несколько списков объектов json в моем запросе POST. Как мы это реализуем? Любое предложение поможет мне - PullRequest
0 голосов
/ 21 октября 2019

Мне нужно принять несколько списков объектов JSON в моем почтовом запросе. Мой код выдает ошибку при попытке дать несколько JSON Obejcts. Нужна помощь в решении этой проблемы. Эта проблема возникла при работе с Java-Dropwizard Project.

Вот как выглядит мой код.

Мой класс ресурсов ::

@Path("/api")
public class TestResource {

@POST
@Path("/post")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public TestRes returnData(final TestRes outData) {
    return outData;
}

Мой метод получения и установкиметоды здесь

public class JsonTransformer {

    private String Name;
    @SerializedName("Entry Date")
    private String entryDate;
    private String Description;

    @JsonProperty("Name")
    public String getName() {
        return Name;
    }

    public void setName(String Name) {
        this.Name = Name;
    }
    @JsonProperty("Entry Date")
    public String getEntryDate() {
        return EntryDate;
    }

    public void setEntryDate(String EntryDate) {
        this.EntryDate = EntryDate;
    }

    @JsonProperty("About")
    public String getAbout() {
        return About;
    }
    public void setAbout(String About) {
        this.About = About;
    }

Входные объекты JSON в теле метода POST ::

[
{
    "Name" : "Test-1",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-1"
},

{
    "Name" : "Test-2",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-2"
},
{
    "Name" : "Test-2",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-3"
}
]

Ожидаемый вывод ::

[
{
    "Name" : "Test-1",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-1"
},

{
    "Name" : "Test-2",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-2"
},
{
    "Name" : "Test-2",
    "Entry Date" : "01-01-1-2020",
    "About" : "Tester-3"
}
]

1 Ответ

1 голос
/ 21 октября 2019

Ваш код принимает один объект TestRes, и вы пытаетесь отправить ему массив.

Измените параметр на List<TestRes>, и тогда ввод и ваш код совпадут.

...