Использование Джексона для анализа multipart/form-data или application/jsonJAVA

Программисты JAVA общаются здесь
Anonymous
Использование Джексона для анализа multipart/form-data или application/json

Сообщение Anonymous »

Я использую CXF с JacksonJsonProvider для своих служб REST. У меня есть следующий метод тестирования

Код: Выделить всё

@POST
@Path("/book/{id}")
@Consumes({"application/json, multipart/form-data, application/x-www-urlencoded"})
@Produces({"application/json"})
public boolean setOwner(Book book) {
System.out.println(book.getName());
return true;
}
Теперь, если я сделаю запрос POST с необработанной строкой JSON следующим образом:

Код: Выделить всё

    {"Book":{"name":"Book name","publisher":"Book publisher"}}
Запрос обрабатывается правильно, поскольку при выполнении запроса я использую Content-Type как «application/json».

Но поскольку я интегрируюсь с внешней службой, я получаю либо multipart/form-data ИЛИ application/x-www-urlencoded, для которого в Джексоне нет ничего, что могло бы его обработать. Если кто-то может указать мне правильное направление, это было бы здорово.

Я могу управлять данными multipart/form с помощью Jettison (часть CXF), но я бы хотел использовать Jackson.

Вернуться в «JAVA»