У меня есть простое действие контроллера:
public class CategoriesController
{
@RequestMapping(value = { "/", "" })
public String list(
Model model,
@PageableDefault(size = CategoriesController.PAGE_LIMIT) Pageable pager
)
{
// load page data
Page<Category> page = this.categoryService.findAll(pager);
/* action logic here */
}
}
Вот мой фрагмент pom.xml
:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>1.6.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.5.0.RELEASE</version>
</dependency>
После добавления этого к моему applicationContext.xml
:
<bean class="org.springframework.data.web.config.SpringDataWebConfiguration"/>
У меня есть следующая ошибка:
org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.data.domain.Pageable]: Specified class is an interface
Spring Сама по себе работа прекрасна, репозитории JPA работают. Но до сих пор у меня была рукописная разбивка на страницы в контроллерах (вычисление страниц самостоятельно, создание объектов PageRequest
вручную). Я хотел использовать веб-приложения Spring Data, но они почему-то не работают для меня... регистрация устаревшего org.springframework.data.web.PageableArgumentResolver
вручную частично заставила его работать, но не полностью, но все же я не подумайте, что это даже должно быть решением.
После включения журнала отладки на org.springframework
я вижу, что:
01:37:33.850 [localhost-startStop-1] DEBUG org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader - Registering bean definition for @Bean method org.springframework.data.web.config.SpringDataWebConfiguration.pageableResolver()
Итак, он зарегистрировался - любая идея, почему он не работает?