Spring bean实例化异常收集
当 Spring 尝试实例化实现 AbstractSet
的 bean 时,它会抛出以下异常。
无法创建集合类型 [org.jboss.netty.channel.group.DefaultChannelGroup] 的副本 - 按原样注入原始集合
<bean id="defaultChannelGroup" class="org.jboss.netty.channel.group.DefaultChannelGroup" scope="prototype"></bean>
<bean id="client" class="com.menacheri.Client">
<property name="id" value="6"></property>
<property name="gameRoomChannelGroup" ref="defaultChannelGroup"></property>
</bean>
对我做错了什么有什么想法吗?
Spring is throwing the following exception when it tries to instantiate a bean which implements AbstractSet<Channel>
.
Cannot create copy of Collection type [org.jboss.netty.channel.group.DefaultChannelGroup] - injecting original Collection as-is
<bean id="defaultChannelGroup" class="org.jboss.netty.channel.group.DefaultChannelGroup" scope="prototype"></bean>
<bean id="client" class="com.menacheri.Client">
<property name="id" value="6"></property>
<property name="gameRoomChannelGroup" ref="defaultChannelGroup"></property>
</bean>
Any ideas on what I am doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Spring 3.0.5 似乎有更好的错误消息,我找不到你提供的错误消息。以下是可能的原因(来自 Spring 源的错误):
[] 类型的集合返回 null Iterator
无法访问 [] 类型的集合 - 按原样注入原始集合
无法创建集合类型 [] 的副本 - 按原样注入原始集合
集合类型 [] 似乎是只读 - 按原样注入原始集合
尽管如此,请尝试包装集合您正在尝试注入一个新的、新鲜的,如下所示:
...并注入
wrappedSet
。可能有帮助,只是一个猜测。Spring 3.0.5 seems to have a bit better error messages, I can't find the one you've provided. Here are the possible reasons (errors from Spring sources):
Collection of type [] returned null Iterator
Cannot access Collection of type [] - injecting original Collection as-is
Cannot create copy of Collection type [] - injecting original Collection as-is
Collection type [] seems to be read-only - injecting original Collection as-is
Nevertheless, try wrapping the collection you are trying to inject in a new, fresh one, like this:
...and inject
wrappedSet
instead. Might help, just a guess.