Spring自动装配了抽象继承错误

时间:2015-06-14 09:11:58

标签: spring tomcat inheritance autowired

考虑这种情况:

我有一个A,B和C类。

B类扩展抽象类A,C类希望使用B类作为 成员执行操作。

@Service
public abstract class A{

}

@Component
public class B extends A{

}


@Service
Public class C {  
  private class B b;

  @Autowired
  public C(Class B b){  // constructor
    this.b = b;
  }    

  private void setB(B b){
    this.b = b;
  }

  private B getB(){
    return b;
  }
}

当我尝试进行组件扫描时,tomcat不会加载。 我已经成功地以这种方式为非继承对象注入bean。

我收到的错误是监听启动错误:

  

2015年6月14日下午12:09:04 org.apache.catalina.core.StandardContext   startInternal SEVERE:Error listenerStart Jun 14,2015 12:09:04 PM   org.apache.catalina.core.StandardContext startInternal SEVERE:Context   []启动因先前的错误而失败2015年6月14日下午12:09:05   org.apache.catalina.loader.WebappClassLoader   checkThreadLocalMapForLeaks

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

存在依赖性问题我能够通过在WEB-INF / conf中添加logging.properties文件来打印tomcat堆栈跟踪

使用此值:

org.apache.catalina.core.ContainerBase。[Catalina] .level = INFO org.apache.catalina.core.ContainerBase。[Catalina] .handlers = java.util.logging.ConsoleHandler