Hi,

I have a simple pojo annotated with iPOJO.

This works:

package com.ce.flowbeans.impl;

import org.apache.felix.ipojo.annotations.Component;
import org.apache.felix.ipojo.annotations.Instantiate;
import org.apache.felix.ipojo.annotations.Provides;
import org.apache.felix.ipojo.annotations.Validate;

import com.ce.flowbeans.spi.FlowAdmin;

@Component
@Instantiate
@Provides
public class FlowAdminImpl implements FlowAdmin {
    
    public FlowAdminImpl(){
        System.out.println("Instantiated");
    }
    
    @Override 
    public void sayHello() {
        System.out.println("I say hello");
    }
    
    @Validate
    public void starts(){
        System.out.println("Started");
    }
    
}

I get 

 
 Instantiated
 Started


But when I use a constructor with the BundleContext, the component is not 
instantiated nor started.
It is also not listed in the iPOJO instances:

package com.ce.flowbeans.impl;

import org.apache.felix.ipojo.annotations.Component;
import org.apache.felix.ipojo.annotations.Instantiate;
import org.apache.felix.ipojo.annotations.Provides;
import org.apache.felix.ipojo.annotations.Validate;
import org.osgi.framework.BundleContext;

import com.ce.flowbeans.spi.FlowAdmin;

@Component
@Instantiate
@Provides
public class FlowAdminImpl implements FlowAdmin {
    
    public FlowAdminImpl(BundleContext context){
        System.out.println("Instanciated");
    }
    
    @Override 
    public void sayHello() {
        System.out.println("I say hello");
    }
    
    @Validate
    public void starts(){
        System.out.println("Started");
    }
    
}

what can be the cause of this?

Thanks!

 
-----------------
http://www.codessentials.com - Your essential software, for free!
Follow us at http://twitter.com/#!/Codessentials

Reply via email to