Hi,

So here's the example from the page..

@Repository
public interface PersonRepository extends EntityRepository<Person, Long>
{

    @Query("select p from Person p where p.age between ?1 and ?2")
    QueryResult<Person> findAllByAge(int minAge, int maxAge);

}

We're not using a predicate per-se, but its using an inlined query.
Unfortunately, any method defined in EntityRepository uses a default
handler that's not overridable (I found it hard to add Optional/Stream
support).  I would do something like the documentation

@Repository
public interface PersonRepository extends EntityRepository<Person, Long>
{

    @Query("select p from Person p")
    QueryResult<Person> findAllPersons();

}

Unless you're using the persistence operations as well, it may just be
easier to not have the base interface.

John

On Wed, Mar 15, 2017 at 7:12 AM Matti Tahvonen <[email protected]> wrote:

> Hi,
>
> My colleague is preparing an example for Vaadin 8 that uses DeltaSpike
> Data (as per my suggestion). We had a hard time finding a solution where
> you could return QueryResult form a JPA Repository, without having any
> predicates. We want to use QueryResult as it is easy to do sorting and
> paging using it, but just want to get all results from the database. In
> other words we’d need an alternative to findAll that returns QueryResult.
>
> The workaround was to add a dummy predicate, but that’s not too pretty:
>
> https://github.com/alejandro-du/lazy-loading-cdi-demo/blob/master/src/main/java/com/example/PersonService.java#L23
>
> QueryResult  findBy() or QueryResult findAllBy() don’t seem to work. Any
> ideas how this should be tackled?
>
> __
> Matti Tahvonen – +358 44 3029728 <+358%2044%203029728> – Vaadin Ltd -
> vaadin.com
>
>
>
>
>

Reply via email to