Hi Göktürk,

OK... Tried that.  Still the same thing.  There's not much to my code, so
I'm including it below.  Please let me know if you see anything.

Thank you for helping me,
Mike


MyComponentImpl.java:

package cook.michael;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

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

@Component
@Instantiate
public class MyComponentImpl {

    @Validate
    public void start() throws IOException {
      System.err.println("Starting: " );
      
        System.out.println("I'm starting...");
        try{
           // Create file
           FileWriter fstream = new FileWriter("/Users/mcook008/out.txt");
           BufferedWriter out = new BufferedWriter(fstream);
           out.write("Hello Java");
           //Close the output stream
           out.close();
           }catch (Exception e){//Catch exception if any
           System.err.println("Error: " + e.getMessage());
           }
        throw new IOException() ;
    }

    @Invalidate
    public void stop() {
        System.out.println("I'm leaving !");
    }
}


metadata.xml:

<ipojo>
<component className="cook.michael.MyComponentImpl"/>
<instance component="cook.michael.MyComponentImpl"/>
</ipojo>



iPojoTest.bnd:

Import-Package: * 
Export-Package: * 
#Private-Package: 


Generated manefest.mf:

Manifest-Version: 1.0
Export-Package: org.apache.felix.ipojo.handler.temporal,org.apache.fel
 ix.ipojo.transaction,org.apache.felix.ipojo.extender,org.apache.felix
 .ipojo.whiteboard,org.apache.felix.ipojo.handlers.event,org.apache.fe
 lix.ipojo.handlers.jmx,org.apache.felix.ipojo.annotations,cook.michae
 l
iPOJO-Components: component { $classname="cook.michael.MyComponentImpl
 " manipulation { method { $name="$init" }method { $name="start" }meth
 od { $name="stop" }}}instance { $component="cook.michael.MyComponentI
 mpl" }component { $name="cook.michael.MyComponentImpl" $classname="co
 ok.michael.MyComponentImpl" $public="true" org.apache.felix.ipojo.ann
 otations:instantiate { }callback { $transition="invalidate" $method="
 stop" }callback { $transition="validate" $method="start" }manipulatio
 n { method { $name="$init" }method { $name="start" }method { $name="s
 top" }}}
Built-By: clement
Tool: Bnd-0.0.249
Bundle-Name: Apache Felix iPOJO Annotations
Created-By: 1.6.0_35 (Apple Inc.) & iPOJO
Bundle-Vendor: The Apache Software Foundation
Bundle-Version: 1.8.2
Build-Jdk: 1.6.0_31
Bnd-LastModified: 1350001458935
Bundle-ManifestVersion: 2
Bundle-Description: iPOJO Annotations
Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-DocURL: http://felix.apache.org/site/how-to-use-ipojo-annotatio
 ns.html
Import-Package: org.osgi.service.log;version=1.3, org.apache.felix.ipo
 jo.handler.temporal, org.apache.felix.ipojo.transaction, org.apache.f
 elix.ipojo.architecture;version=0.9.0, org.apache.felix.ipojo.extende
 r, org.apache.felix.ipojo.whiteboard, org.apache.felix.ipojo;version=
 0.9.0, org.apache.felix.ipojo.handlers.event, org.apache.felix.ipojo.
 handlers.jmx, org.osgi.service.cm;version=1.2, org.apache.felix.ipojo
 .annotations, cook.michael
Bundle-SymbolicName: iPojoTest
Originally-Created-By: Apache Maven Bundle Plugin




On 10/11/12 7:54 PM, "Göktürk Gezer" <[email protected]> wrote:

>Hi,
>
>First of all @Component is mandatory.(For annotation based usage).
>
>But this only defines your component. To actually instantiate it you
>should
>do it deliberately. One way to do that is using @Instantiate annotation.
>
>So your code would be like:
>
>@Component
>@Instantiate
>public class foo{
>
>  @Validate
>  public void start()
>..........
>..........
>}
>
>On Fri, Oct 12, 2012 at 1:00 AM, Cook, Michael J. (OCTO) <
>[email protected]> wrote:
>
>> Sorry. Just rechecked. Used @ Component on the class. And
>> @Invalidate/@validate on the methods. Just tried removing the
>>@Component.
>> Same result. No output.
>>
>> Mike
>> Michael Cook
>> VP Technology Innovation
>> Comcast
>> One Comcast Center
>> Philadelphia, PA 19103
>> (o) 215-286-8260
>> (m) 609-458-0332
>>
>> ----- Original Message -----
>> From: Cook, Michael J. (OCTO)
>> Sent: Thursday, October 11, 2012 05:47 PM
>> To: '[email protected]' <[email protected]>
>> Subject: Re: Getting Started with iPOJO
>>
>> I used @validate/@invalidate alone.
>>
>> Mike
>>
>> Michael Cook
>> VP Technology Innovation
>> Comcast
>> One Comcast Center
>> Philadelphia, PA 19103
>> (o) 215-286-8260
>> (m) 609-458-0332
>>
>> ----- Original Message -----
>> From: Göktürk Gezer [mailto:[email protected]]
>> Sent: Thursday, October 11, 2012 05:39 PM
>> To: [email protected] <[email protected]>
>> Subject: Re: Getting Started with iPOJO
>>
>> Hi,
>>
>> I need to ask this first since it's not on your code snippet: Did you
>>use
>> @Component annotation for class where you've declared your start()
>>stop()
>> methods? Or did you use @Validate,@Invalidate alone?
>>
>>
>> *Regards,*
>> *Gokturk*
>>
>> On Thu, Oct 11, 2012 at 8:13 PM, Cook, Michael J. (OCTO) <
>> [email protected]> wrote:
>>
>> > Hi,
>> >
>> > I can't seem to find a good article that will help me resolve the
>> "getting
>> > started" issue I am facing.
>> >
>> > I am using Eclipse Juno (4.2) on my Mac.
>> >
>> > I have downloaded and installed the iPOJO eclipse plugin, from:
>> > http://clement.plop-plop.net/update/
>> >
>> > I have created a sample project following the instructions at:
>> > http://felix.apache.org/site/ipojo-eclipse-plug-in.html
>> >
>> > I have integrated Felix into Eclipse as a project, following
>>instructions
>> > here: http://felix.apache.org/site/integrating-felix-with-eclipse.html
>> >
>> > I have downloaded the following iPOJO bundle:
>> > org.apache.felix.ipojo-1.8.2.jar
>> >
>> > I've launched Felix in the Eclipse console and I've installed the
>> > org.apache.felix.ipojo-1.8.2.jar bundle and started it.
>> >
>> > I've created a test bundle using iPOJO called iPojoTest.jar and I've
>> > installed it and started it in the OSGI console.
>> >
>> > I run bundles in the console and I get:
>> >
>> > g! bundles
>> >
>> >     0|Active     |    0|org.apache.felix.framework (3.0.7)
>> >
>> >     1|Active     |    1|org.apache.felix.bundlerepository (1.6.2)
>> >
>> >     2|Active     |    1|org.apache.felix.gogo.command (0.6.1)
>> >
>> >     3|Active     |    1|org.apache.felix.gogo.runtime (0.6.1)
>> >
>> >     4|Active     |    1|org.apache.felix.gogo.shell (0.6.1)
>> >
>> >    12|Active     |    1|iPojoTest (1.4.0)
>> >
>> >    13|Active     |    1|org.apache.felix.ipojo (1.8.2)
>> >
>> >
>> > So, the bundle seems to have started.
>> >
>> > But I don't get any console output from my sysoutsŠ
>> >
>> > Here are the start() and stop() methods:
>> >
>> >
>> >  @Validate
>> >
>> >     public void start() throws IOException {
>> >
>> >                 System.out.println("I'm starting...");
>> >
>> >         try{
>> >
>> >           // Create file
>> >
>> >                   FileWriter fstream = new
>> > FileWriter("/Users/mcook008/out.txt");
>> >
>> >                   BufferedWriter out = new BufferedWriter(fstream);
>> >
>> >                   out.write("Hello Java");
>> >
>> >                   //Close the output stream
>> >
>> >                   out.close();
>> >
>> >                   }catch (Exception e){//Catch exception if any
>> >
>> >                   System.err.println("Error: " + e.getMessage());
>> >
>> >                   }
>> >
>> >         throw new IOException() ;
>> >
>> >     }
>> >
>> >     @Invalidate
>> >
>> >     public void stop() {
>> >
>> >         System.out.println("I'm leaving !");
>> >
>> >     }
>> >
>> >
>> >
>> >
>> > I added in the file write to see if a file would be created.  There
>>is no
>> > file created.  So, while OSGi thinks the bundle is ACTIVE, the start
>> method
>> > appears never have to been called.
>> >
>> >
>> > Can anyone tell me what I may have done wrong or provide a clue as to
>> what
>> > to look at to help diagnose the problem?
>> >
>> >
>> > Thanks,
>> >
>> > Mike
>> >
>> >
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to