首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法实例化bean类[com.github.dandelion.datatables.core.ajax.DatatablesCriterias]:未找到默认构造函数

无法实例化bean类[com.github.dandelion.datatables.core.ajax.DatatablesCriterias]:未找到默认构造函数
EN

Stack Overflow用户
提问于 2015-10-02 17:16:32
回答 1查看 458关注 0票数 2

你知道为什么我会收到这个错误吗?

代码语言:javascript
复制
SEVERE: Servlet.service() for servlet [enemr] in context with path [/enemr] threw exception [Request processing failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.github.dandelion.datatables.core.ajax.DatatablesCriterias]: No default constructor found; nested exception is java.lang.NoSuchMethodException: com.github.dandelion.datatables.core.ajax.DatatablesCriterias.<init>()] with root cause
java.lang.NoSuchMethodException: com.github.dandelion.datatables.core.ajax.DatatablesCriterias.<init>()

我从这里换了我的控制器

代码语言:javascript
复制
@RequestMapping(value = "/results", method = RequestMethod.GET)
    public @ResponseBody DatatablesResponse<Results> findAllForDataTables(HttpServletRequest request) {

        DatatablesCriterias dataTableCriterias = DatatablesCriterias.getFromRequest(request);
        DataSet<Results> results = this.resultsServiceimpl.findResultsWithDatatablesCriterias(dataTableCriterias);
        return DatatablesResponse.build(results, dataTableCriterias);
    }

要这样做:

代码语言:javascript
复制
@RequestMapping(value = "/results", method = RequestMethod.GET)
    public @ResponseBody 
    DatatablesResponse<Results> findAllForDataTables(@DatatablesParams DatatablesCriterias criterias) {

        DataSet<Results> results = this.resultsServiceimpl.findResultsWithDatatablesCriterias(criterias);
        return DatatablesResponse.build(results, criterias);
    }

突然停止工作

任何帮助我都会非常感谢。

我使用的是Spring3.2和dandelion datatables 1.1.0

EN

回答 1

Stack Overflow用户

发布于 2016-05-01 15:44:24

当您将控制器更改为使用DatatablesParams注释时,您需要启用一个解析器,它将实例化DatatablesCriterias对象。由于Spring3.2正在使用中,因此需要启用DatatablesCriteriasMethodArgumentResolver

通过xml:

代码语言:javascript
复制
     <!-- Add support for @DatatablesParams annotations in controller's methods -->
   <mvc:annotation-driven>
      <mvc:argument-resolvers>
         <bean class="com.github.dandelion.datatables.extras.spring3.ajax.DatatablesCriteriasMethodArgumentResolver" />
      </mvc:argument-resolvers>
   </mvc:annotation-driven>

或java config:

代码语言:javascript
复制
   @Configuration
   @EnableWebMvc
   public class MyWebConfig extends WebMvcConfigurerAdapter {
      @Override
      public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
         argumentResolvers.add(new DatatablesCriteriasMethodArgumentResolver());
      }
   }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32904072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档