@JsonInclude(JsonInclude.Include.NON_EMPTY) не работает с jackson-jakarta-rs-json-providerJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 @JsonInclude(JsonInclude.Include.NON_EMPTY) не работает с jackson-jakarta-rs-json-provider

Сообщение Anonymous »

Я определил ниже:

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

@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List filterItems;
и метод getTabInfoFilterDAO возвращает:

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

public TabInfoFilter getFilter {
final List results = query.getResultList();

if (CollectionUtils.isEmpty(results))
{
return Collections.EMPTY_LIST;
}

return results;
}

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

@GET
@Path("/formular/{formularId}")
@Produces(MediaType.APPLICATION_JSON)
public Collection getFilters(@PathParam("formularId") final int formularId)
{
return getTabInfoFilterDAO().getFilters(mandant, userId, userId, formularId);
}
Но я всегда получаю сообщение об ошибке ниже, если результат имеет пустой список:

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

org.glassfish.jersey.message.internal.WriterInterceptorExecutor MessageBodyWriter not found for media type=application/json, type=class java.util.Collections$EmptyList, genericType=java.util.Collection
Я использую Java 21 и jackson 2.18.0
Код хорошо работает с javax. Результат должен вернуть []

Подробнее здесь: https://stackoverflow.com/questions/790 ... on-jakarta
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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