Невозможно вернуть список объектов для медиатипа "application / xml" в остальные API - PullRequest
0 голосов
/ 02 ноября 2019

Пытаюсь вернуть список объектов по HTTP-запросу GET для типа носителя "application / xml".

Получаю сообщение об ошибке ниже:

SEVERE: MessageBodyWriter не найден дляmedia type = application / xml, type = class java.util.ArrayList, genericType = class java.util.ArrayList.

Попробовал следующие вещи:

1) Мой DTO не имеетArg конструктор и реализует Seralizable. 2) У меня есть jax-зависимости jaxb в моем pom для выполнения xml marshall / unmarshall.

Примечание : он работает с возвратом одного объекта, но не со списком объектов

Это может быть глупой ошибкой.

@XmlRootElement
public class Company implements Serializable  {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private String car;
    private String brand;

    public Company() {

    }
 ...... genereated setter/getter

Я получал Список объектов из базы данных.

// values getting from database.
    List<Company> companyList = new ArrayList<Company>(values);
    return Response.status(Status.OK).entity(companyList).build();

Помощь приветствуется!

1 Ответ

0 голосов
/ 04 ноября 2019

Мне удалось решить эту проблему, добавив GenericEntity и передав ему список.

GenericEntity<List<Company>> companyEntity = new GenericEntity<List<Company>>(companyList){};
return Response.status(Status.OK).entity(companyEntity).build();
...