Spring - 实例化一个带有抛出异常的类的bean

时间:2012-10-03 10:45:35

标签: spring

我正在尝试实例化构造函数可以抛出异常的bean。 我不能修改这个类(由外部团队给出)。

<bean id="myClass" class="myClass" />

myClass构造函数抛出异常。

我一直在考虑使用Singleton Pattern扩展这个类,这是我想要的行为(确保只实例化一个MyClass实例)。

错误讯息:

  

嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   用名字创建bean   '我的课'   在类路径资源中定义   [... / spring_applicationContext.xml]:   bean的实例化失败;嵌套异常是   org.springframework.beans.BeanInstantiationException:不能   实例化bean类   [我的课]:   构造函数抛出异常;嵌套异常是   java.lang.ExceptionInInitializerError

提前感谢您的回答

我认为问题来自于我的构造函数抛出异常的事实。

我的问题是:使用Spring,是否可以使用可能引发异常的构造函数实例化bean?

3 个答案:

答案 0 :(得分:3)

如果bean配置文件中未指定bean作用域,则默认为singleton。你的bean myClass是一个单身人士,你不需要再做任何事了 Spring Doc

答案 1 :(得分:1)

Spring bean默认是单身。

你应该提供更多的堆栈跟踪 - 你所展示的内容表明问题不是myClass,而是抛出异常的ClassPathXmlApplicationContext构造函数 - 原因通常在堆栈跟踪的后面。 / p>

干杯,

答案 2 :(得分:0)

根据堆栈跟踪,看起来在创建类“myClass”的对象时,静态块或变量中存在意外错误。