Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Warning após implementar a paginação

Após implementação da paginação proposta na aula, observando meu console recebo o seguinte warning:

WARN 37175 --- [generator] [nio-8080-exec-6] PageModule$PlainPageSerializationWarning : Serializing PageImpl instances as-is is not supported, meaning that there is no guarantee about the stability of the resulting JSON structure!
    For a stable JSON structure, please use Spring Data's PagedModel (globally via @EnableSpringDataWebSupport(pageSerializationMode = VIA_DTO))
    or Spring HATEOAS and Spring Data's PagedResourcesAssembler as documented in https://docs.spring.io/spring-data/commons/reference/repositories/core-extensions.html#core.web.pageables.

Se trata de uma atualização do Spring Boot ?

1 resposta
solução!

Opa, Morais!

Pelo que entendi, o Spring não está conseguindo serializar a sua classe.

Acredito que possa ser algum desses casos:

  • Está faltando o retorno "Serializable" em TopicoView (ou em outra data classe que serve como dto);
  • O service está retornando os dados diretamente do repository (exemplo, retornar o Page de Topico ao invés do Page de TopicoView).

Mas acredito fortemente que o teu caso é a primeira opção, porque eu lembro que precisei fazer essa mudança do código original para poder rodar na nova versão do Spring.

Então sua classe ficaria assim:

import br.com.alura.forum.model.StatusTopico
import java.time.LocalDateTime

data class TopicoView(
        val id: Long?,
        val titulo: String,
        val mensagem: String,
        val status: StatusTopico,
        val dataCriacao: LocalDateTime
): Serializable