#resteasy #quarkus #reactive #quarkus-panache
Вопрос:
Нереактивная версия этого кода работает нормально. Но в реактивной версии что-то происходит при отображении пустой или пустой коллекции из базы данных.
ЗАПИСЬ нового объекта шаблона возвращает 201, в журналах нет ничего необычного. Но, когда я выполняю шаблон GET on, функция listAll() возвращает приведенную ниже ошибку.
Я попытался инициализировать элемент «разделы» в пустой коллекции, но результат тот же.
Что я упускаю?
Реагирующая Сущность:
import io.quarkus.hibernate.reactive.panache.PanacheEntity; @Entity public class Template extends PanacheEntity { public String name; @OneToMany(mappedBy = "template", cascade = CascadeType.ALL) public Listlt;Sectiongt; sections; }
API ресурсов:
@GET @Path("template") public Unilt;Listlt;Templategt;gt; listTemplates() { return Template.lt;Templategt;listAll(); } @POST @Path("template") @Consumes("application/json") @Produces("application/json") @ReactiveTransactional public Unilt;Responsegt; addTemplate(Template template) { return Panache.lt;Templategt;withTransaction(template::persist) .onItem().transform(inserted -gt; { return createdResponse("/template/%d", inserted.id); }); }
Зависимости:
lt;artifactIdgt;quarkus-resteasy-reactive-jacksonlt;/artifactIdgt; lt;artifactIdgt;quarkus-hibernate-reactive-panachelt;/artifactIdgt; lt;artifactIdgt;quarkus-resteasy-reactivelt;/artifactIdgt; lt;artifactIdgt;quarkus-reactive-pg-clientlt;/artifactIdgt;
Ошибка:
JsonMappingException: HR000056: Collection cannot be initialized: score.Template.sections (through reference chain: java.util.ArrayList[0]-gt;score.Template["sections"])