Matt Pavlovich created KARAF-5664: ------------------------------------- Summary: Service Component created via xml defines scope=''singleton' and service is created with scope='bundle' Key: KARAF-5664 URL: https://issues.apache.org/jira/browse/KARAF-5664 Project: Karaf Issue Type: Bug Components: karaf-scr Affects Versions: 4.1.5 Reporter: Matt Pavlovich
Steps to reproduce: # Define a serviceComponent via xml # Deploy bundle # run scr:info (observe Service Scope: singleton) # run service:list (observe service.scope = bundle) Investigation: * Debugging in felix.scr confirms that the xml is being parsed correctly and the returned component metadata shows the 'scope' = 'singleton' correctly [o.a.felix.scr.impl.xml.XmlHandler#L362|https://github.com/apache/felix/blob/trunk/scr/src/main/java/org/apache/felix/scr/impl/xml/XmlHandler.java#L362] scr:info output: {noformat} karaf@root()> scr:info TestModule *** Bundle: com.foo.test-module (124) Component Description: Name: BundleModule Implementation Class: com.foo.TestModule Default State: enabled Activation: immediate Configuration Policy: optional Activate Method: activate Deactivate Method: deactivate Modified Method: - Configuration Pid: [TestModule] Services: com.foo.api.Module Service Scope: singleton Component Description Properties: Component Configuration: ComponentId: 4 State: active Component Configuration Properties: component.id = 4 component.name = TestModule{noformat} service:list output {noformat} karaf@root()> service:list [com.foo.api.Module] ------------------------ component.id = 4 component.name = TestModule service.bundleid = 124 service.id = 141 service.scope = bundle Provided by : Company :: Foo :: TestModule (124){noformat} OSGI-INF/serviceComponent.xml {noformat} <?xml version="1.0" encoding="utf-8"?> <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.3.0" name="TestModule" immediate="true"> <service scope="singleton"> <provide interface="com.foo.api.Module" /> </service> <implementation class="com.foo.TestModule" /> </scr:component>{noformat} Note: When the same impl class is reconfigured to register as a service via BundleActivator, the service has a service.scope = 'singleton' -- This message was sent by Atlassian JIRA (v7.6.3#76005)