Re: iPojo @Stereotype annotated annotation from separate bundle
Hi Milen Can you share a minimal project to help us reproduce the issue ? If you could zip it and attach it to a new JIRA, that would be great. Thanks -- Guillaume Sauthier (OW2) Sent with Airmail On 22 Sep 2014 at 08:27:12, Clement Escoffier (clement.escoff...@gmail.com) wrote: Hi, Sorry for the late reply (should never change my email program). So, it should not be the case. As soon as the stereotype is available in the manipulator class path, it should be used. Obviously, if it’s in the bundle, it’s necessarily in the class path. Could you open an issue, it’s probably a bug. Cheers, Clement On 16 septembre 2014 at 10:57:46, Milen Dyankov (milendyan...@gmail.com) wrote: OK, my bad, I asked the question poorly. It of course works with private-package as well (I just used the export in my simple test). What I intended to ask was, why the stereotype class needs to be included in the bundle using it? In another words - isn't it enough that the bundle imports the package and the jar is on maven's classpath? On Mon, Sep 15, 2014 at 3:26 PM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Could you check that the stereotype class is actually included in the jar file when not exported ? Maybe the ‘private-package’ instruction contains the error. Cheers, Clement On 15 septembre 2014 at 15:05:17, Milen Dyankov (milendyan...@gmail.com) wrote: OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com ) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
I can but most likely not before next week. Thanks On Mon, Sep 29, 2014 at 1:00 AM, Guillaume Sauthier (OW2) guillaume@gmail.com wrote: Hi Milen Can you share a minimal project to help us reproduce the issue ? If you could zip it and attach it to a new JIRA, that would be great. Thanks -- Guillaume Sauthier (OW2) Sent with Airmail On 22 Sep 2014 at 08:27:12, Clement Escoffier (clement.escoff...@gmail.com) wrote: Hi, Sorry for the late reply (should never change my email program). So, it should not be the case. As soon as the stereotype is available in the manipulator class path, it should be used. Obviously, if it’s in the bundle, it’s necessarily in the class path. Could you open an issue, it’s probably a bug. Cheers, Clement On 16 septembre 2014 at 10:57:46, Milen Dyankov (milendyan...@gmail.com) wrote: OK, my bad, I asked the question poorly. It of course works with private-package as well (I just used the export in my simple test). What I intended to ask was, why the stereotype class needs to be included in the bundle using it? In another words - isn't it enough that the bundle imports the package and the jar is on maven's classpath? On Mon, Sep 15, 2014 at 3:26 PM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Could you check that the stereotype class is actually included in the jar file when not exported ? Maybe the ‘private-package’ instruction contains the error. Cheers, Clement On 15 septembre 2014 at 15:05:17, Milen Dyankov (milendyan...@gmail.com) wrote: OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov ( milendyan...@gmail.com ) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
Hi, Sorry for the late reply (should never change my email program). So, it should not be the case. As soon as the stereotype is available in the manipulator class path, it should be used. Obviously, if it’s in the bundle, it’s necessarily in the class path. Could you open an issue, it’s probably a bug. Cheers, Clement On 16 septembre 2014 at 10:57:46, Milen Dyankov (milendyan...@gmail.com) wrote: OK, my bad, I asked the question poorly. It of course works with private-package as well (I just used the export in my simple test). What I intended to ask was, why the stereotype class needs to be included in the bundle using it? In another words - isn't it enough that the bundle imports the package and the jar is on maven's classpath? On Mon, Sep 15, 2014 at 3:26 PM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Could you check that the stereotype class is actually included in the jar file when not exported ? Maybe the ‘private-package’ instruction contains the error. Cheers, Clement On 15 septembre 2014 at 15:05:17, Milen Dyankov (milendyan...@gmail.com) wrote: OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com ) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
OK, my bad, I asked the question poorly. It of course works with private-package as well (I just used the export in my simple test). What I intended to ask was, why the stereotype class needs to be included in the bundle using it? In another words - isn't it enough that the bundle imports the package and the jar is on maven's classpath? On Mon, Sep 15, 2014 at 3:26 PM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Could you check that the stereotype class is actually included in the jar file when not exported ? Maybe the ‘private-package’ instruction contains the error. Cheers, Clement On 15 septembre 2014 at 15:05:17, Milen Dyankov (milendyan...@gmail.com) wrote: OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com ) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
Hi, Could you check that the stereotype class is actually included in the jar file when not exported ? Maybe the ‘private-package’ instruction contains the error. Cheers, Clement On 15 septembre 2014 at 15:05:17, Milen Dyankov (milendyan...@gmail.com) wrote: OK, found the problem. It's due to how Export-Package of the maven-bundle-plugin is configured. Here is an example: - I have stereotype maven project where I define a @Stereotype as *test.ipojo.stereotype*.MyComponent - The bundle maven project where I try to use the stereotype has its classes in the package *test.ipojo.bundle* When I have this in the bundle maven project : Export-Packagetest.ipojo.bundle*;version=${project.version}/Export-Package it does not work! What I see in the console is: [WARNING] Class test.ipojo.bundle.ComponentByStereotype has not been marked as a component type (no @Component, @Handler, ...). It will be ignored by the iPOJO manipulator. However changing this to: Export-Package*test.ipojo.stereotype** ,test.ipojo.bundle*;version=${project.version}/Export-Package works just fine. While I now know how to make it work, I'm still confused why do I need to export the stereotype package? On Mon, Sep 15, 2014 at 11:24 AM, Milen Dyankov milendyan...@gmail.com wrote: Thanks for explaining how it works Clement! I am indeed using maven and I tried to add the jar as a maven-ipojo- plugin dependency but it still does not seem to work. I'll play a bit with it and if it still does not work I'll try to extract and provide a simple example so you can eventually tell me what I'm doing wrong. Best, Milen On Sat, Sep 13, 2014 at 9:01 AM, Clement Escoffier clement.escoff...@gmail.com wrote: Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen -- http://about.me/milen -- http://about.me/milen
Re: iPojo @Stereotype annotated annotation from separate bundle
Hi, Stereotypes are analyzed at build time, not at runtime. So they are packaged in regular jars. To work as expected, the stereotype need to be available from the ‘manipulator’ engine, in other words: be in the same class path. So, if you are using Maven, you can do as follows: plugin groupIdorg.apache.felix/groupId artifactIdmaven-ipojo-plugin/artifactId executions execution goals goalipojo-bundle/goal /goals /execution /executions dependencies dependency groupIdyour.groupId/groupId artifactIdyour.sterotype.artifactId/artifactId versionyour.version/version /dependency /dependencies /plugin Cheers, Clement On 13 septembre 2014 at 02:06:25, Milen Dyankov (milendyan...@gmail.com) wrote: Hi, Is the usage of a @Stereotype annotated annotation from another bundle supported? It doesn't seem to work even though the package is properly exported and imported. The docs only say: If the stereotyped annotation is directly in the manipulated module, no problems: any front-end will work as expected. If not, the different manipulator's front-end have variable support for the stereotype feature. This is not very clear to me and to be honest I'm no sure what a manipulator's front-end is. Regards, Milen -- http://about.me/milen