本帖最后由 yiyi_2 于 2011-11-02 12:16:09 编辑

解决方案 »

  1.   

    看上去是没有显示构造器引起的。。排查一下Service,是不是Springside里的构造器不是显示的
      

  2.   

    以下是EntityDao的代码
    package org.springside.core.dao;import java.io.Serializable;
    import java.util.List;public abstract interface EntityDao<T>
    {
      public abstract T get(Serializable paramSerializable);  public abstract List<T> getAll();  public abstract void save(Object paramObject);  public abstract void remove(Object paramObject);  public abstract void removeById(Serializable paramSerializable);  public abstract String getIdName(Class paramClass);
    }另外,如果单例不通过spring注入方式调用, 测试中试过在main方法中获得实例,则没有报错
      

  3.   

    是实现EntityDao接口的类会报错还是继承HibernateEntityDao的会报错?
    觉得应该不是EntityDao接口的问题,估计HibernateEntityDao没有提供无参构造方法
      

  4.   

    是继承的service类报错, 因为构造方法是私有的
      

  5.   

    如果要用Spring注入的话,必须提供public的构造方法。
      

  6.   


    需要保证默认构造方法为public,即无参数的构造方法
      

  7.   


    非也, 单例可以通过factory-method 属性来调用公共的实例调用方法, 我试过如果不实现EntityDao这个接口的话是没问题的