Thanks Clement. I couldn't re-open the issue with my account. At least I couldn't find where to re-open the issue. I did comment https://issues.apache.org/jira/browse/FELIX-3576 with what I am seeing.
Thanks! Anthony Bargnesi On Wed, Oct 17, 2012 at 3:08 AM, Clement Escoffier < [email protected]> wrote: > Hi, > > It looks definitely related to FELIX-3576. Could you re-open the issue. I > will have a look. > > Regards, > > Clement > > On 16 oct. 2012, at 22:46, Anthony Bargnesi <[email protected]> wrote: > > > Hi folks, > > > > I have an iPOJO service component that takes two constructor parameters: > > - BundleContext > > - another service with @Requires > > > > My scenario is similar to the following contrived example: > > > > @Component > > @Provides > > @Instantiate > > public class DefaultUserService implements UserService { > > ... > > } > > > > @Component > > @Provides > > @Instantiate > > public class DefaultPersonService extends ObjectService implements > > PersonService { > > > > private final BundleContext ctx; > > > > public DefaultPersonService(BundleContext ctx, > > @Requires(nullable = false, proxy = false) > > UserService userService) { > > > > super(userService); > > this.ctx = ctx; > > } > > } > > > > In my example I require ObjectService to be instantiated with the > > UserService so it must > > be a constructor parameter. > > > > I found that if I also want BundleContext to be injected then I receive > the > > following > > NullPointerException: > > > > [2012-10-16 16:11:11.886] ERROR iLogServiceListener@65284069 > > org.osgi.service.log.LogService > > Bundle person.impl_0.1.0, [ERROR] person.impl.DefaultPersonService : null > > java.lang.NullPointerException: null > > at > > > org.apache.felix.ipojo.InstanceManager.handleBCInjections(InstanceManager.java: > > 253) > > at > > > org.apache.felix.ipojo.InstanceManager.configure(InstanceManager.java:207) > > at > > > org.apache.felix.ipojo.ComponentFactory.createInstance(ComponentFactory.java: > > 178) > > at > > > org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java: > > 310) > > at > > > org.apache.felix.ipojo.IPojoFactory.createComponentInstance(IPojoFactory.java: > > 239) > > at > > > org.apache.felix.ipojo.InstanceCreator$ManagedInstance.create(InstanceCreator.java: > > 355) > > at > > > org.apache.felix.ipojo.InstanceCreator.addInstance(InstanceCreator.java:89) > > at org.apache.felix.ipojo.Extender.parse(Extender.java:306) > > at > > org.apache.felix.ipojo.Extender.startManagementFor(Extender.java:237) > > at org.apache.felix.ipojo.Extender.access$600(Extender.java:52) > > at > org.apache.felix.ipojo.Extender$CreatorThread.run(Extender.java: > > 769) > > at java.lang.Thread.run(Thread.java:722) > > > > If I remove the BundleContext constructor parameter then the UserService > is > > injected and the DefaultPersonService > > is valid. > > > > I have tested this against the latest trunk code at: > > https://svn.apache.org/repos/asf/felix/trunk/ipojo/ > > > > I thought it could be related to the following fix: > > https://issues.apache.org/jira/browse/FELIX-3576 > > > > Could this be a bug? > > > > Thanks! > > Anthony Bargnesi > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >

