Я пытаюсь десериализовать отправку объекта почтовым сообщением с помощью gson.fromJson.Не удается десериализовать объект с помощью gson.fromJson
@POST
@Path("company") // takes name as a path parameter
@Produces("application/json") // response formatted as JSON
public Response insertCompany(String content) {
Gson gson = new Gson();
CompanyWithNoIdReturn newCompany = gson.fromJson(content, CompanyWithNoIdReturn.class);
}
public class CompanyWithNoIdReturn {
private final String name;
private final String description;
private final String logo;
public CompanyWithNoIdReturn(String name, String description, String logo)
{
this.name = name;
this.description = description;
this.logo = logo;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
public String getLogo() {
return logo;
}
}
Ошибка, которая приходит в: javax.servlet.ServletException:
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Ожидаемое BEGIN_OBJECT но STRING в строке 1 колонка 1
Я понимаю, что это означает, что он ожидает, что она начинается с {
и не "
, как указано в here , Хотя я не понял, как это исправить?
EDIT: При использовании формы - данные содержание как:
content = (java.lang.String) "------WebKitFormBoundaryUG5yy1gW9G2V5qcz
Content-Disposition: form-data; name="CompanyName"
newCompanyName2
------WebKitFormBoundaryUG5yy1gW9G2V5qcz
Content-Disposition: form-data; name="Description"
newDescription2
------WebKitFormBoundaryUG5yy1gW9G2V5qcz
Content-Disposition: form-data; name="logo"
newLogo2
------WebKitFormBoundaryUG5yy1gW9G2V5qcz--
"
Где ваш вход JSON? – Amila
@Amila Я добавил изображение почтальона \ –