首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为每次调用的新实例配置Spring-DM OSGi服务?

如何为每次调用的新实例配置Spring-DM OSGi服务?
EN

Stack Overflow用户
提问于 2010-06-17 05:08:28
回答 1查看 827关注 0票数 2

我开始深入研究在RCP应用程序中使用Spring DM和OSGi服务。我已经创建了一个服务,该服务由RCP应用程序中的另一个包使用。它使用显式的包名和服务类名通过调用getBundleContext().getServiceReference()来查找服务。我还没有在任何地方使用DI。我遇到的问题是请求包中返回的服务是单例的。有时我会注意到一个线程问题,因为它是一个“有状态”的服务。如何配置应用程序以在每次调用时返回一个新的服务实例?

下面是我的spring xml文件内容,它注册了服务:

代码语言:javascript
复制
<bean id="myServBean" class="com.xyz.ClassImpl"/>
<osgi:service ref="myServBean" class="com.xyz.Class"/>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-30 23:09:55

OSGi服务通常可以由多个客户端并发调用。OSGi唯一开箱即用支持的就是使用ServiceFactory,它允许您向每个调用客户端包返回一个不同的实例。没有标准的机制来为每个方法调用创建一个新实例。您必须在您的服务实现中自己处理该问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3057189

复制
相关文章

相似问题

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