Как отфильтровать результаты запроса GWT? - PullRequest
1 голос
/ 27 июля 2011

У меня есть вопрос о том, как выполнить фильтрацию данных с помощью RequestFactory в GWT. В настоящее время я работаю над приложением, которое поддерживается базой данных MySQL. Мой уровень постоянства основан на JPA / Hibernate. Я использую RequestFactory для запроса в моей базе данных всех моих операций, связанных с листингом.

Так, например, у меня есть объект Person: в моем PersonRequestContext у меня есть метод, который позволяет мне перечислять людей. Подпись метода:

Request<List<PersonProxy>> listPersons(Integer firstResult, Integer maxResults);

Как вы уже догадались, соответствующий запрос выглядит примерно так:

entityManager.createQuery("SELECT p FROM Person p ORDER BY p.id").setFirstResult(firstResult).setMaxResults(maxResults).getResultList();

Теперь, Я бы хотел отфильтровать результат по столбцам таблицы . Поэтому я хотел использовать какую-то абстракцию класса Filter для ее решения. Проблема в том, что, как мы все знаем, невозможно передать непримитивные объекты в метод requestFactory.

Вы когда-нибудь испытывали подобные вещи? И как ты с этим справился, чтобы решить проблему?

1 Ответ

1 голос
/ 27 июля 2011

Ваше утверждение о том, что в метод Request могут быть переданы только примитивные типы. См. Документацию по транспортабельным типам . Вы можете создать иерархию ValueProxy для моделирования ваших фильтров.

...