Ho esaminato sia this e this question. Ma non sono ancora riuscito a configurare il paging per un metodo di repository. Non sono sicuro se sono affetto da un bug o semplicemente non lo scrivo correttamente. Fondamentalmente sto chiedendo se qualcuno potrebbe fornire un esempio di come implementare il paging su un metodo di repository che viene esportato attraverso l'annotazione @RepositoryRestResource?Avvio a molla: come configurare l'impaginazione su un @RepositoryRestResource?
Il mio tentativo di raggiungere l'impaginazione
@RepositoryRestResource(collectionResourceRel = "users", path = "users")
public interface UserRepository extends JpaRepository<User, Long> {
Page<User> findByUserGroup(@Param("userGroup") String userGroup,
@Param("page") Pageable pageable);
}
Il messaggio di errore generato dal codice
Offending method public abstract org.springframework.data.domain.Page com.project.repository.UserRepository.findByUserGroup(java.lang.String,java.awt.print.Pageable)
Ho anche provato a rimuovere il metodo param per paginabile che poi ha portato in questo errore:
Caused by: java.lang.IllegalArgumentException: Either use @Param on all parameters except Pageable and Sort typed once, or none at all!
dipendenze sto usando in questo progetto.
- Oracle java 8.
- "org.springframework.boot: spring-boot-Gradle-plugin: 1.2.3.RELEASE",
- "org.springframework.boot: spring-boot-starter -Web "
- "org.springframework.boot: primavera-boot-starter-attuatore",
- 'org.springframework.boot: primavera-boot-starter-mail',
- " org.springframework. boot: spring-boot-starter-thymeleaf ",
- " org.spr ingframework.boot: primavera-boot-starter-sicurezza "
- "org.springframework.security.oauth: spring-security-OAuth2: 2.0.0.RC2",
- " org.springframework.boot: molla boot-avviamento-data-JPA",
- "org.springframework.boot: spring-boot-starter-data-riposo",
Qualsiasi aiuto sarebbe molto apprezzato.
Update: La soluzione finale
L'aggiunta di questa come riferimento per chiunque altro chiedendo come fare questo. La differenza principale era che dovevo assicurarmi di importare l'oggetto giusto Pageable
come indicato nella risposta scelta.
@RepositoryRestResource(collectionResourceRel = "users", path = "users")
public interface UserRepository extends JpaRepository<User, Long> {
Page<User> findByUserGroup(@Param("userGroup") String userGroup, Pageable pageable);
}
Bene macchiato! Questo era esattamente il problema. Grazie! :) – thunki