You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by cmoulliard <cm...@gmail.com> on 2009/02/11 10:50:53 UTC

SMX4 Kernel & OSGI librairies strategy

Hi,

I would like to know what is the best/quickest way to design OSGI
librairies/bundles for a project ?

First of all, let's start with a example : camel + cxf

To deploy such a project top of SMX kernel 1.x, I need of course to create
an osgi project for my code. This project can be created using mvn archetype
(maven-felix-plugin), bnd or pax-contruct

my.company.osgi.camel.cxf

Let's says that this osgi bundle depends on :

camel-core 2.0-SNAPSHOT,
camel-spring 2.0-SNAPSHOT,
camel-cxf 2.0-SNAPSHOT

Those dependencies already exist as OSGI bundles (ths Camel team), so I can
install them easily in SMX Kernel 1.x

But these dependencies depends on additional jars which are potentially not
at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 

Questions :

- How can I easily/quickly detect which jars are not 'osgi'fied' without
deploying, looking in the log and discovering that dependencies are
unresolved ?
- What is the best strategy to OSGIfied them ? I mean 'use by example the
option 'embed-transitive' of bnd tools (which is used by maven-felix-plugin
or pax-constrcut)'. But the risk is that too much jars are embedded in my
osgi bundle or wrapped separetely 

Regards,

Charles

-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21951410.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Many thanks


Jean-Baptiste Onofré wrote:
> 
> Well,
> 
> I have made a first review on the plugin source code.
> 
> Considering the GenerateFeaturesXmlMojo, the algorithm in the execute()
> method is :
> 
> 1/ readSystemPackages() :
>    This method loads a config.properties file (in the maven plugin
> resources) in a properties object.
>    It calls readSystemPackages(properties, key) for the key jre-1.5 and
> osgi.
>    In this readSystemPackages(properties, key), it loads the String value
> for the key (jre-1.5 and osgi)
>    and iterates in each string value (splitted by ;).
> 2/ readKernelBundles() :
>    This method downloads a kernel distro and check the list of bundles
> provided by the kernel.
>    It gets a artifact kernel and get the dependencies on the kernel
> artifact.
>    For each dependencies, it gets the artifact manifest.
>    If the manifest exports is not null, it iterates on each manifest
> entry. For each manifest entry, it adds
>    in a HashMap<String, VersionRange> named kernelExports.
> 3/ readBundles() :
>    This methods reads the list of bundles we can use to satisfy links. The
> bundles is a file (in maven plugin
>    argument) containing the list of bundles. If this file is not null, it
> reads each row (not comment one) and
>    split using /. It creates an artifact with the 4 elements of the row.
> It call registerBundle() for each
>    artifact.
>    The registerBundle() method gets the artifact manifest. Each manifest
> entry is added in the bundleExports which
>    is a HashMap<String, VersionRange> (like kernelExports).
> 4/ writeFeatures() :
>    Finally, this method writes a feature XML file containing the feature
> of each artifact dependencies.
> 
> The problem can be in the step 2 and 3 when a bundle has several other
> bundle dependencies.
> 
> I have another tasks to complete this evening but I will work on it
> tomorrow morning.
> 
> Regards
> JB
> 
> On Thursday 12 February 2009 - 20:30, Gert Vanthienen wrote:
>> Charles,
>> 
>> Jean-Baptiste Onofré mentioned he wanted to take a stab at this issue,
>> so he'll be looking into it.  If you can attach a 'clean'
>> features.xml, with all the bundles in the correct order, he can
>> probably use that as a target for fine-tuning the features plugin.
>> 
>> You can find the source code for this plugin at
>> http://svn.apache.org/repos/asf/servicemix/maven-plugins/features-maven-plugin/trunk/,
>> but the algorithm is roughly like this:
>> - first build a list of the exports from all the kernel bundles --
>> this way, we can avoid generating bundles entries for what's already
>> in kernel
>> - then build a list of exports from a list of bundles in a
>> configuraiton file (in src/main/filtered-resources in the
>> camel-features project)
>> - we then look at the osgi metadata in a given camel jar (e.g.
>> camel-core) and try to find a suitable bundle for every import it
>> specifies
>> - whenever we add a bundle to a feature, we will also repeat the
>> previous routine for the bundle being added
>> - the list of bundles will be written to the file in the reverse order
>> we resolved them (so e.g. the camel-core comes after its dependencies)
>> 
>> My guess is that the problem occurs when we have several bundles
>> importing the same package.  The bundle providing the package will be
>> added when the plugin first encounters it, but if some other bundle
>> later on requires the same dependency, we should move the bundle a few
>> lines up in the feature.  Not sure if I explain the issue
>> appropriately, but feel free to ask for clarifications...
>> 
>> Regards,
>> 
>> Gert Vanthienen
>> ------------------------
>> Open Source SOA: http://fusesource.com
>> Blog: http://gertvanthienen.blogspot.com/
>> 
>> 
>> 
>> 2009/2/12 cmoulliard <cm...@gmail.com>:
>> >
>> > Gert,
>> >
>> > Who is 'L.S.' ?
>> >
>> > Concerning the JIRA ticket :
>> >
>> > - Can I help you to define the correct order ?
>> > - How the mechanism is implemented to generate the features.xml file ?
>> >
>> > Regards,
>> >
>> >
>> >
>> > Gert Vanthienen wrote:
>> >>
>> >> L.S.,
>> >>
>> >> Actually, I just decided to 'do the right thing' and create a JIRA
>> >> issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
>> >>
>> >> Regards,
>> >>
>> >> Gert Vanthienen
>> >> ------------------------
>> >> Open Source SOA: http://fusesource.com
>> >> Blog: http://gertvanthienen.blogspot.com/
>> >>
>> >>
>> >>
>> >> 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
>> >>> Charles,
>> >>>
>> >>> This is the bug that I need to get fixed tomorrow morning.  As
>> >>> Guillaume explained, the order is important so the plugin should take
>> >>> care of getting that right.
>> >>>
>> >>> Regards,
>> >>>
>> >>> Gert Vanthienen
>> >>> ------------------------
>> >>> Open Source SOA: http://fusesource.com
>> >>> Blog: http://gertvanthienen.blogspot.com/
>> >>>
>> >>>
>> >>>
>> >>> 2009/2/11 cmoulliard <cm...@gmail.com>:
>> >>>>
>> >>>> To be precise, the url must have the following syntax :
>> >>>>
>> >>>> addUrl mvn:groupId/artifactId/version/xml/features
>> >>>>
>> >>>> and for a file
>> >>>>
>> >>>> addUrl file:///d:/temp/features.xml
>> >>>>
>> >>>> Question:
>> >>>>
>> >>>> When such error is reported,
>> >>>>
>> >>>> smx@root:features> install camel-jms
>> >>>> ERROR CommandLineExecutionFailed:
>> >>>> org.apache.geronimo.gshell.command.CommandException:
>> >>>> org.osgi.framework.BundleException: Unresolved constraint in bundle
>> 53:
>> >>>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>> >>>>
>> >>>> How can I sove it ?
>> >>>>
>> >>>> bundle 53 = spring jms 2.5.6
>> >>>>
>> >>>> Surprisingly the features file mentions this :
>> >>>>
>> >>>>  <feature name='camel-jms'>
>> >>>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>> >>>>
>> >>>>
>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>> >>>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>> >>>>
>> >>>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>> >>>>
>> >>>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>> >>>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>> >>>>
>> >>>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>> >>>>
>> >>>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>> >>>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>> >>>>  </feature>
>> >>>>
>> >>>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
>> >>>> javax.jms
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> gnodet wrote:
>> >>>>>
>> >>>>> Any url would work.
>> >>>>> If you want to point to your maven repo, a good way would be to use
>> >>>>> the maven urls:
>> >>>>>    mvn:groupId/artifactId/version
>> >>>>> as in the example Gert gave.
>> >>>>> That way, you won't have to change it when it's deployed to a
>> remote
>> >>>>> repository.
>> >>>>>
>> >>>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com>
>> wrote:
>> >>>>>>
>> >>>>>> Can I use the command features/addUrl to point to a local file
>> >>>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> Gert Vanthienen wrote:
>> >>>>>>>
>> >>>>>>> Charles,
>> >>>>>>>
>> >>>>>>> For ServiceMix Kernel, we have a features.xml available for
>> >>>>>>> installing
>> >>>>>>> camel components.  The latest snapshot is available at
>> >>>>>>>
>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>> >>>>>>> This descriptor is being generated based on the OSGi manifest
>> >>>>>>> information.  If a JAR is already a bundle, we just include in
>> the
>> >>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use
>> that
>> >>>>>>> instead. Unfortunately it also look like the latest snapshot is
>> >>>>>>> broken.
>> >>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>> >>>>>>>
>> >>>>>>> In order to use it, issue these two commands from the ServiceMix
>> >>>>>>> console:
>> >>>>>>> - features/addUrl
>> >>>>>>>
>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>> >>>>>>> - features/install camel-cxf
>> >>>>>>>
>> >>>>>>> Another problem is that this is being generated for the latest
>> >>>>>>> released
>> >>>>>>> version of Camel (1.5.0) and you probably need it for
>> 2.0-SNAPSHOT
>> >>>>>>> because you need some of the fixes that went in that version,
>> right?
>> >>>>>>> The project definition that is being used to generate the
>> features
>> >>>>>>> descriptor can be found at
>> >>>>>>>
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>> >>>>>>> so perhaps you could try to modify that to generate a
>> 2.0-SNAPSHOT
>> >>>>>>> descriptor.
>> >>>>>>>
>> >>>>>>> In the long run, we should figure out a way to get this thing
>> >>>>>>> generated
>> >>>>>>> for every version of Camel.  I wonder if it would be an option to
>> >>>>>>> move
>> >>>>>>> the generation process into the Camel project.  Not sure the
>> >>>>>>> drawbacks
>> >>>>>>> outweigh the gains on that one...
>> >>>>>>>
>> >>>>>>> Regards,
>> >>>>>>>
>> >>>>>>> Gert
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> cmoulliard wrote:
>> >>>>>>>> Hi,
>> >>>>>>>>
>> >>>>>>>> I would like to know what is the best/quickest way to design
>> OSGI
>> >>>>>>>> librairies/bundles for a project ?
>> >>>>>>>>
>> >>>>>>>> First of all, let's start with a example : camel + cxf
>> >>>>>>>>
>> >>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course
>> to
>> >>>>>>>> create
>> >>>>>>>> an osgi project for my code. This project can be created using
>> mvn
>> >>>>>>>> archetype
>> >>>>>>>> (maven-felix-plugin), bnd or pax-contruct
>> >>>>>>>>
>> >>>>>>>> my.company.osgi.camel.cxf
>> >>>>>>>>
>> >>>>>>>> Let's says that this osgi bundle depends on :
>> >>>>>>>>
>> >>>>>>>> camel-core 2.0-SNAPSHOT,
>> >>>>>>>> camel-spring 2.0-SNAPSHOT,
>> >>>>>>>> camel-cxf 2.0-SNAPSHOT
>> >>>>>>>>
>> >>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel
>> team),
>> >>>>>>>> so I
>> >>>>>>>> can
>> >>>>>>>> install them easily in SMX Kernel 1.x
>> >>>>>>>>
>> >>>>>>>> But these dependencies depends on additional jars which are
>> >>>>>>>> potentially
>> >>>>>>>> not
>> >>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>> >>>>>>>>
>> >>>>>>>> Questions :
>> >>>>>>>>
>> >>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>> >>>>>>>> without
>> >>>>>>>> deploying, looking in the log and discovering that dependencies
>> are
>> >>>>>>>> unresolved ?
>> >>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
>> >>>>>>>> example
>> >>>>>>>> the
>> >>>>>>>> option 'embed-transitive' of bnd tools (which is used by
>> >>>>>>>> maven-felix-plugin
>> >>>>>>>> or pax-constrcut)'. But the risk is that too much jars are
>> embedded
>> >>>>>>>> in
>> >>>>>>>> my
>> >>>>>>>> osgi bundle or wrapped separetely
>> >>>>>>>>
>> >>>>>>>> Regards,
>> >>>>>>>>
>> >>>>>>>> Charles
>> >>>>>>>>
>> >>>>>>>> -----
>> >>>>>>>> Charles Moulliard
>> >>>>>>>> SOA Architect
>> >>>>>>>>
>> >>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>> >>>>>>>> http://cmoulliard.blogspot.com/
>> >>>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> -----
>> >>>>>>> ---
>> >>>>>>> Gert Vanthienen
>> >>>>>>> http://gertvanthienen.blogspot.com
>> >>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> -----
>> >>>>>> Charles Moulliard
>> >>>>>> SOA Architect
>> >>>>>>
>> >>>>>> My Blog :  http://cmoulliard.blogspot.com/
>> >>>>>> http://cmoulliard.blogspot.com/
>> >>>>>> --
>> >>>>>> View this message in context:
>> >>>>>>
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>> >>>>>> Sent from the ServiceMix - User mailing list archive at
>> Nabble.com.
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> --
>> >>>>> Cheers,
>> >>>>> Guillaume Nodet
>> >>>>> ------------------------
>> >>>>> Blog: http://gnodet.blogspot.com/
>> >>>>> ------------------------
>> >>>>> Open Source SOA
>> >>>>> http://fusesource.com
>> >>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>> -----
>> >>>> Charles Moulliard
>> >>>> SOA Architect
>> >>>>
>> >>>> My Blog :  http://cmoulliard.blogspot.com/
>> >>>> http://cmoulliard.blogspot.com/
>> >>>> --
>> >>>> View this message in context:
>> >>>>
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
>> >>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >>>>
>> >>>>
>> >>>
>> >>
>> >>
>> >> -----
>> >> ---
>> >> Gert Vanthienen
>> >> http://gertvanthienen.blogspot.com
>> >>
>> >
>> >
>> > -----
>> > Charles Moulliard
>> > SOA Architect
>> >
>> > My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/
>> > --
>> > View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
>> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >
>> >
> 
> -- 
> Jean-Baptiste Onofré (Nanthrax)
> BuildProcess/AutoDeploy Project Leader
> http://buildprocess.sourceforge.net
> jb@nanthrax.net
> PGP : 17D4F086
> 
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21992066.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Well,

I have made a first review on the plugin source code.

Considering the GenerateFeaturesXmlMojo, the algorithm in the execute() method is :

1/ readSystemPackages() :
   This method loads a config.properties file (in the maven plugin resources) in a properties object.
   It calls readSystemPackages(properties, key) for the key jre-1.5 and osgi.
   In this readSystemPackages(properties, key), it loads the String value for the key (jre-1.5 and osgi)
   and iterates in each string value (splitted by ;).
2/ readKernelBundles() :
   This method downloads a kernel distro and check the list of bundles provided by the kernel.
   It gets a artifact kernel and get the dependencies on the kernel artifact.
   For each dependencies, it gets the artifact manifest.
   If the manifest exports is not null, it iterates on each manifest entry. For each manifest entry, it adds
   in a HashMap<String, VersionRange> named kernelExports.
3/ readBundles() :
   This methods reads the list of bundles we can use to satisfy links. The bundles is a file (in maven plugin
   argument) containing the list of bundles. If this file is not null, it reads each row (not comment one) and
   split using /. It creates an artifact with the 4 elements of the row. It call registerBundle() for each
   artifact.
   The registerBundle() method gets the artifact manifest. Each manifest entry is added in the bundleExports which
   is a HashMap<String, VersionRange> (like kernelExports).
4/ writeFeatures() :
   Finally, this method writes a feature XML file containing the feature of each artifact dependencies.

The problem can be in the step 2 and 3 when a bundle has several other bundle dependencies.

I have another tasks to complete this evening but I will work on it tomorrow morning.

Regards
JB

On Thursday 12 February 2009 - 20:30, Gert Vanthienen wrote:
> Charles,
> 
> Jean-Baptiste Onofré mentioned he wanted to take a stab at this issue,
> so he'll be looking into it.  If you can attach a 'clean'
> features.xml, with all the bundles in the correct order, he can
> probably use that as a target for fine-tuning the features plugin.
> 
> You can find the source code for this plugin at
> http://svn.apache.org/repos/asf/servicemix/maven-plugins/features-maven-plugin/trunk/,
> but the algorithm is roughly like this:
> - first build a list of the exports from all the kernel bundles --
> this way, we can avoid generating bundles entries for what's already
> in kernel
> - then build a list of exports from a list of bundles in a
> configuraiton file (in src/main/filtered-resources in the
> camel-features project)
> - we then look at the osgi metadata in a given camel jar (e.g.
> camel-core) and try to find a suitable bundle for every import it
> specifies
> - whenever we add a bundle to a feature, we will also repeat the
> previous routine for the bundle being added
> - the list of bundles will be written to the file in the reverse order
> we resolved them (so e.g. the camel-core comes after its dependencies)
> 
> My guess is that the problem occurs when we have several bundles
> importing the same package.  The bundle providing the package will be
> added when the plugin first encounters it, but if some other bundle
> later on requires the same dependency, we should move the bundle a few
> lines up in the feature.  Not sure if I explain the issue
> appropriately, but feel free to ask for clarifications...
> 
> Regards,
> 
> Gert Vanthienen
> ------------------------
> Open Source SOA: http://fusesource.com
> Blog: http://gertvanthienen.blogspot.com/
> 
> 
> 
> 2009/2/12 cmoulliard <cm...@gmail.com>:
> >
> > Gert,
> >
> > Who is 'L.S.' ?
> >
> > Concerning the JIRA ticket :
> >
> > - Can I help you to define the correct order ?
> > - How the mechanism is implemented to generate the features.xml file ?
> >
> > Regards,
> >
> >
> >
> > Gert Vanthienen wrote:
> >>
> >> L.S.,
> >>
> >> Actually, I just decided to 'do the right thing' and create a JIRA
> >> issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
> >>
> >> Regards,
> >>
> >> Gert Vanthienen
> >> ------------------------
> >> Open Source SOA: http://fusesource.com
> >> Blog: http://gertvanthienen.blogspot.com/
> >>
> >>
> >>
> >> 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
> >>> Charles,
> >>>
> >>> This is the bug that I need to get fixed tomorrow morning.  As
> >>> Guillaume explained, the order is important so the plugin should take
> >>> care of getting that right.
> >>>
> >>> Regards,
> >>>
> >>> Gert Vanthienen
> >>> ------------------------
> >>> Open Source SOA: http://fusesource.com
> >>> Blog: http://gertvanthienen.blogspot.com/
> >>>
> >>>
> >>>
> >>> 2009/2/11 cmoulliard <cm...@gmail.com>:
> >>>>
> >>>> To be precise, the url must have the following syntax :
> >>>>
> >>>> addUrl mvn:groupId/artifactId/version/xml/features
> >>>>
> >>>> and for a file
> >>>>
> >>>> addUrl file:///d:/temp/features.xml
> >>>>
> >>>> Question:
> >>>>
> >>>> When such error is reported,
> >>>>
> >>>> smx@root:features> install camel-jms
> >>>> ERROR CommandLineExecutionFailed:
> >>>> org.apache.geronimo.gshell.command.CommandException:
> >>>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
> >>>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
> >>>>
> >>>> How can I sove it ?
> >>>>
> >>>> bundle 53 = spring jms 2.5.6
> >>>>
> >>>> Surprisingly the features file mentions this :
> >>>>
> >>>>  <feature name='camel-jms'>
> >>>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
> >>>>
> >>>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
> >>>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
> >>>>
> >>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
> >>>>
> >>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
> >>>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
> >>>>
> >>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
> >>>>
> >>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
> >>>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
> >>>>  </feature>
> >>>>
> >>>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
> >>>> javax.jms
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> gnodet wrote:
> >>>>>
> >>>>> Any url would work.
> >>>>> If you want to point to your maven repo, a good way would be to use
> >>>>> the maven urls:
> >>>>>    mvn:groupId/artifactId/version
> >>>>> as in the example Gert gave.
> >>>>> That way, you won't have to change it when it's deployed to a remote
> >>>>> repository.
> >>>>>
> >>>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
> >>>>>>
> >>>>>> Can I use the command features/addUrl to point to a local file
> >>>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> Gert Vanthienen wrote:
> >>>>>>>
> >>>>>>> Charles,
> >>>>>>>
> >>>>>>> For ServiceMix Kernel, we have a features.xml available for
> >>>>>>> installing
> >>>>>>> camel components.  The latest snapshot is available at
> >>>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
> >>>>>>> This descriptor is being generated based on the OSGi manifest
> >>>>>>> information.  If a JAR is already a bundle, we just include in the
> >>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
> >>>>>>> instead. Unfortunately it also look like the latest snapshot is
> >>>>>>> broken.
> >>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
> >>>>>>>
> >>>>>>> In order to use it, issue these two commands from the ServiceMix
> >>>>>>> console:
> >>>>>>> - features/addUrl
> >>>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
> >>>>>>> - features/install camel-cxf
> >>>>>>>
> >>>>>>> Another problem is that this is being generated for the latest
> >>>>>>> released
> >>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
> >>>>>>> because you need some of the fixes that went in that version, right?
> >>>>>>> The project definition that is being used to generate the features
> >>>>>>> descriptor can be found at
> >>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
> >>>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
> >>>>>>> descriptor.
> >>>>>>>
> >>>>>>> In the long run, we should figure out a way to get this thing
> >>>>>>> generated
> >>>>>>> for every version of Camel.  I wonder if it would be an option to
> >>>>>>> move
> >>>>>>> the generation process into the Camel project.  Not sure the
> >>>>>>> drawbacks
> >>>>>>> outweigh the gains on that one...
> >>>>>>>
> >>>>>>> Regards,
> >>>>>>>
> >>>>>>> Gert
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> cmoulliard wrote:
> >>>>>>>> Hi,
> >>>>>>>>
> >>>>>>>> I would like to know what is the best/quickest way to design OSGI
> >>>>>>>> librairies/bundles for a project ?
> >>>>>>>>
> >>>>>>>> First of all, let's start with a example : camel + cxf
> >>>>>>>>
> >>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
> >>>>>>>> create
> >>>>>>>> an osgi project for my code. This project can be created using mvn
> >>>>>>>> archetype
> >>>>>>>> (maven-felix-plugin), bnd or pax-contruct
> >>>>>>>>
> >>>>>>>> my.company.osgi.camel.cxf
> >>>>>>>>
> >>>>>>>> Let's says that this osgi bundle depends on :
> >>>>>>>>
> >>>>>>>> camel-core 2.0-SNAPSHOT,
> >>>>>>>> camel-spring 2.0-SNAPSHOT,
> >>>>>>>> camel-cxf 2.0-SNAPSHOT
> >>>>>>>>
> >>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
> >>>>>>>> so I
> >>>>>>>> can
> >>>>>>>> install them easily in SMX Kernel 1.x
> >>>>>>>>
> >>>>>>>> But these dependencies depends on additional jars which are
> >>>>>>>> potentially
> >>>>>>>> not
> >>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
> >>>>>>>>
> >>>>>>>> Questions :
> >>>>>>>>
> >>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
> >>>>>>>> without
> >>>>>>>> deploying, looking in the log and discovering that dependencies are
> >>>>>>>> unresolved ?
> >>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
> >>>>>>>> example
> >>>>>>>> the
> >>>>>>>> option 'embed-transitive' of bnd tools (which is used by
> >>>>>>>> maven-felix-plugin
> >>>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
> >>>>>>>> in
> >>>>>>>> my
> >>>>>>>> osgi bundle or wrapped separetely
> >>>>>>>>
> >>>>>>>> Regards,
> >>>>>>>>
> >>>>>>>> Charles
> >>>>>>>>
> >>>>>>>> -----
> >>>>>>>> Charles Moulliard
> >>>>>>>> SOA Architect
> >>>>>>>>
> >>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
> >>>>>>>> http://cmoulliard.blogspot.com/
> >>>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> -----
> >>>>>>> ---
> >>>>>>> Gert Vanthienen
> >>>>>>> http://gertvanthienen.blogspot.com
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>> -----
> >>>>>> Charles Moulliard
> >>>>>> SOA Architect
> >>>>>>
> >>>>>> My Blog :  http://cmoulliard.blogspot.com/
> >>>>>> http://cmoulliard.blogspot.com/
> >>>>>> --
> >>>>>> View this message in context:
> >>>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
> >>>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> --
> >>>>> Cheers,
> >>>>> Guillaume Nodet
> >>>>> ------------------------
> >>>>> Blog: http://gnodet.blogspot.com/
> >>>>> ------------------------
> >>>>> Open Source SOA
> >>>>> http://fusesource.com
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>> -----
> >>>> Charles Moulliard
> >>>> SOA Architect
> >>>>
> >>>> My Blog :  http://cmoulliard.blogspot.com/
> >>>> http://cmoulliard.blogspot.com/
> >>>> --
> >>>> View this message in context:
> >>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
> >>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >>>>
> >>>>
> >>>
> >>
> >>
> >> -----
> >> ---
> >> Gert Vanthienen
> >> http://gertvanthienen.blogspot.com
> >>
> >
> >
> > -----
> > Charles Moulliard
> > SOA Architect
> >
> > My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> > --
> > View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >
> >

-- 
Jean-Baptiste Onofré (Nanthrax)
BuildProcess/AutoDeploy Project Leader
http://buildprocess.sourceforge.net
jb@nanthrax.net
PGP : 17D4F086

Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@gmail.com>.
Charles,

Jean-Baptiste Onofré mentioned he wanted to take a stab at this issue,
so he'll be looking into it.  If you can attach a 'clean'
features.xml, with all the bundles in the correct order, he can
probably use that as a target for fine-tuning the features plugin.

You can find the source code for this plugin at
http://svn.apache.org/repos/asf/servicemix/maven-plugins/features-maven-plugin/trunk/,
but the algorithm is roughly like this:
- first build a list of the exports from all the kernel bundles --
this way, we can avoid generating bundles entries for what's already
in kernel
- then build a list of exports from a list of bundles in a
configuraiton file (in src/main/filtered-resources in the
camel-features project)
- we then look at the osgi metadata in a given camel jar (e.g.
camel-core) and try to find a suitable bundle for every import it
specifies
- whenever we add a bundle to a feature, we will also repeat the
previous routine for the bundle being added
- the list of bundles will be written to the file in the reverse order
we resolved them (so e.g. the camel-core comes after its dependencies)

My guess is that the problem occurs when we have several bundles
importing the same package.  The bundle providing the package will be
added when the plugin first encounters it, but if some other bundle
later on requires the same dependency, we should move the bundle a few
lines up in the feature.  Not sure if I explain the issue
appropriately, but feel free to ask for clarifications...

Regards,

Gert Vanthienen
------------------------
Open Source SOA: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



2009/2/12 cmoulliard <cm...@gmail.com>:
>
> Gert,
>
> Who is 'L.S.' ?
>
> Concerning the JIRA ticket :
>
> - Can I help you to define the correct order ?
> - How the mechanism is implemented to generate the features.xml file ?
>
> Regards,
>
>
>
> Gert Vanthienen wrote:
>>
>> L.S.,
>>
>> Actually, I just decided to 'do the right thing' and create a JIRA
>> issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
>>
>> Regards,
>>
>> Gert Vanthienen
>> ------------------------
>> Open Source SOA: http://fusesource.com
>> Blog: http://gertvanthienen.blogspot.com/
>>
>>
>>
>> 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
>>> Charles,
>>>
>>> This is the bug that I need to get fixed tomorrow morning.  As
>>> Guillaume explained, the order is important so the plugin should take
>>> care of getting that right.
>>>
>>> Regards,
>>>
>>> Gert Vanthienen
>>> ------------------------
>>> Open Source SOA: http://fusesource.com
>>> Blog: http://gertvanthienen.blogspot.com/
>>>
>>>
>>>
>>> 2009/2/11 cmoulliard <cm...@gmail.com>:
>>>>
>>>> To be precise, the url must have the following syntax :
>>>>
>>>> addUrl mvn:groupId/artifactId/version/xml/features
>>>>
>>>> and for a file
>>>>
>>>> addUrl file:///d:/temp/features.xml
>>>>
>>>> Question:
>>>>
>>>> When such error is reported,
>>>>
>>>> smx@root:features> install camel-jms
>>>> ERROR CommandLineExecutionFailed:
>>>> org.apache.geronimo.gshell.command.CommandException:
>>>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
>>>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>>>>
>>>> How can I sove it ?
>>>>
>>>> bundle 53 = spring jms 2.5.6
>>>>
>>>> Surprisingly the features file mentions this :
>>>>
>>>>  <feature name='camel-jms'>
>>>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>>>>
>>>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>>>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>>>>
>>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>>>>
>>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>>>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>>>>
>>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>>>>
>>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>>>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>>>>  </feature>
>>>>
>>>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
>>>> javax.jms
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> gnodet wrote:
>>>>>
>>>>> Any url would work.
>>>>> If you want to point to your maven repo, a good way would be to use
>>>>> the maven urls:
>>>>>    mvn:groupId/artifactId/version
>>>>> as in the example Gert gave.
>>>>> That way, you won't have to change it when it's deployed to a remote
>>>>> repository.
>>>>>
>>>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>>>>>
>>>>>> Can I use the command features/addUrl to point to a local file
>>>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>>>>>
>>>>>>
>>>>>>
>>>>>> Gert Vanthienen wrote:
>>>>>>>
>>>>>>> Charles,
>>>>>>>
>>>>>>> For ServiceMix Kernel, we have a features.xml available for
>>>>>>> installing
>>>>>>> camel components.  The latest snapshot is available at
>>>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>>>> This descriptor is being generated based on the OSGi manifest
>>>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>>>> broken.
>>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>>>
>>>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>>>> console:
>>>>>>> - features/addUrl
>>>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>>>> - features/install camel-cxf
>>>>>>>
>>>>>>> Another problem is that this is being generated for the latest
>>>>>>> released
>>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>>>> because you need some of the fixes that went in that version, right?
>>>>>>> The project definition that is being used to generate the features
>>>>>>> descriptor can be found at
>>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>>>> descriptor.
>>>>>>>
>>>>>>> In the long run, we should figure out a way to get this thing
>>>>>>> generated
>>>>>>> for every version of Camel.  I wonder if it would be an option to
>>>>>>> move
>>>>>>> the generation process into the Camel project.  Not sure the
>>>>>>> drawbacks
>>>>>>> outweigh the gains on that one...
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Gert
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> cmoulliard wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>>>> librairies/bundles for a project ?
>>>>>>>>
>>>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>>>
>>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>>>> create
>>>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>>>> archetype
>>>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>>>
>>>>>>>> my.company.osgi.camel.cxf
>>>>>>>>
>>>>>>>> Let's says that this osgi bundle depends on :
>>>>>>>>
>>>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>>>
>>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
>>>>>>>> so I
>>>>>>>> can
>>>>>>>> install them easily in SMX Kernel 1.x
>>>>>>>>
>>>>>>>> But these dependencies depends on additional jars which are
>>>>>>>> potentially
>>>>>>>> not
>>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>>>
>>>>>>>> Questions :
>>>>>>>>
>>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>>>> without
>>>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>>>> unresolved ?
>>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
>>>>>>>> example
>>>>>>>> the
>>>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>>>> maven-felix-plugin
>>>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>>>> in
>>>>>>>> my
>>>>>>>> osgi bundle or wrapped separetely
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Charles
>>>>>>>>
>>>>>>>> -----
>>>>>>>> Charles Moulliard
>>>>>>>> SOA Architect
>>>>>>>>
>>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>>>> http://cmoulliard.blogspot.com/
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -----
>>>>>>> ---
>>>>>>> Gert Vanthienen
>>>>>>> http://gertvanthienen.blogspot.com
>>>>>>>
>>>>>>
>>>>>>
>>>>>> -----
>>>>>> Charles Moulliard
>>>>>> SOA Architect
>>>>>>
>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>> http://cmoulliard.blogspot.com/
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>>>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Cheers,
>>>>> Guillaume Nodet
>>>>> ------------------------
>>>>> Blog: http://gnodet.blogspot.com/
>>>>> ------------------------
>>>>> Open Source SOA
>>>>> http://fusesource.com
>>>>>
>>>>>
>>>>
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>
>>
>> -----
>> ---
>> Gert Vanthienen
>> http://gertvanthienen.blogspot.com
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>

Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@gmail.com>.
Excellent Chris, seems like you've been really paying attention during
Latin class ;)

Regards,

Gert Vanthienen
------------------------
Open Source SOA: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



2009/2/12 Chris Custine <ch...@gmail.com>:
>>
>> Who is 'L.S.' ?
>
>
> I vaguely remember that this is short for the latin phrase "Lectori Salutem"
> which means roughly "greetings to the reader".  I knew that latin class
> would be useful some day  :-D
>
> Did I get that right Gert?
>
> Chris
> --
> Chris Custine
> My Blog :: http://blog.organicelement.com
> Apache ServiceMix :: http://servicemix.apache.org
> Apache Directory Server :: http://directory.apache.org
>
>
> On Thu, Feb 12, 2009 at 8:09 AM, cmoulliard <cm...@gmail.com> wrote:
>
>>
>> Gert,
>>
>> Who is 'L.S.' ?
>>
>> Concerning the JIRA ticket :
>>
>> - Can I help you to define the correct order ?
>> - How the mechanism is implemented to generate the features.xml file ?
>>
>> Regards,
>>
>>
>>
>> Gert Vanthienen wrote:
>> >
>> > L.S.,
>> >
>> > Actually, I just decided to 'do the right thing' and create a JIRA
>> > issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
>> >
>> > Regards,
>> >
>> > Gert Vanthienen
>> > ------------------------
>> > Open Source SOA: http://fusesource.com
>> > Blog: http://gertvanthienen.blogspot.com/
>> >
>> >
>> >
>> > 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
>> >> Charles,
>> >>
>> >> This is the bug that I need to get fixed tomorrow morning.  As
>> >> Guillaume explained, the order is important so the plugin should take
>> >> care of getting that right.
>> >>
>> >> Regards,
>> >>
>> >> Gert Vanthienen
>> >> ------------------------
>> >> Open Source SOA: http://fusesource.com
>> >> Blog: http://gertvanthienen.blogspot.com/
>> >>
>> >>
>> >>
>> >> 2009/2/11 cmoulliard <cm...@gmail.com>:
>> >>>
>> >>> To be precise, the url must have the following syntax :
>> >>>
>> >>> addUrl mvn:groupId/artifactId/version/xml/features
>> >>>
>> >>> and for a file
>> >>>
>> >>> addUrl file:///d:/temp/features.xml
>> >>>
>> >>> Question:
>> >>>
>> >>> When such error is reported,
>> >>>
>> >>> smx@root:features> install camel-jms
>> >>> ERROR CommandLineExecutionFailed:
>> >>> org.apache.geronimo.gshell.command.CommandException:
>> >>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
>> >>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>> >>>
>> >>> How can I sove it ?
>> >>>
>> >>> bundle 53 = spring jms 2.5.6
>> >>>
>> >>> Surprisingly the features file mentions this :
>> >>>
>> >>>  <feature name='camel-jms'>
>> >>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>> >>>
>> >>>
>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>> >>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>> >>>
>> >>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>> >>>
>> >>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>> >>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>> >>>
>> >>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>> >>>
>> >>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>> >>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>> >>>  </feature>
>> >>>
>> >>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
>> >>> javax.jms
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> gnodet wrote:
>> >>>>
>> >>>> Any url would work.
>> >>>> If you want to point to your maven repo, a good way would be to use
>> >>>> the maven urls:
>> >>>>    mvn:groupId/artifactId/version
>> >>>> as in the example Gert gave.
>> >>>> That way, you won't have to change it when it's deployed to a remote
>> >>>> repository.
>> >>>>
>> >>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com>
>> wrote:
>> >>>>>
>> >>>>> Can I use the command features/addUrl to point to a local file
>> >>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Gert Vanthienen wrote:
>> >>>>>>
>> >>>>>> Charles,
>> >>>>>>
>> >>>>>> For ServiceMix Kernel, we have a features.xml available for
>> >>>>>> installing
>> >>>>>> camel components.  The latest snapshot is available at
>> >>>>>>
>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>> >>>>>> This descriptor is being generated based on the OSGi manifest
>> >>>>>> information.  If a JAR is already a bundle, we just include in the
>> >>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>> >>>>>> instead. Unfortunately it also look like the latest snapshot is
>> >>>>>> broken.
>> >>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>> >>>>>>
>> >>>>>> In order to use it, issue these two commands from the ServiceMix
>> >>>>>> console:
>> >>>>>> - features/addUrl
>> >>>>>>
>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>> >>>>>> - features/install camel-cxf
>> >>>>>>
>> >>>>>> Another problem is that this is being generated for the latest
>> >>>>>> released
>> >>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>> >>>>>> because you need some of the fixes that went in that version, right?
>> >>>>>> The project definition that is being used to generate the features
>> >>>>>> descriptor can be found at
>> >>>>>>
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>> ,
>> >>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>> >>>>>> descriptor.
>> >>>>>>
>> >>>>>> In the long run, we should figure out a way to get this thing
>> >>>>>> generated
>> >>>>>> for every version of Camel.  I wonder if it would be an option to
>> >>>>>> move
>> >>>>>> the generation process into the Camel project.  Not sure the
>> >>>>>> drawbacks
>> >>>>>> outweigh the gains on that one...
>> >>>>>>
>> >>>>>> Regards,
>> >>>>>>
>> >>>>>> Gert
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> cmoulliard wrote:
>> >>>>>>> Hi,
>> >>>>>>>
>> >>>>>>> I would like to know what is the best/quickest way to design OSGI
>> >>>>>>> librairies/bundles for a project ?
>> >>>>>>>
>> >>>>>>> First of all, let's start with a example : camel + cxf
>> >>>>>>>
>> >>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>> >>>>>>> create
>> >>>>>>> an osgi project for my code. This project can be created using mvn
>> >>>>>>> archetype
>> >>>>>>> (maven-felix-plugin), bnd or pax-contruct
>> >>>>>>>
>> >>>>>>> my.company.osgi.camel.cxf
>> >>>>>>>
>> >>>>>>> Let's says that this osgi bundle depends on :
>> >>>>>>>
>> >>>>>>> camel-core 2.0-SNAPSHOT,
>> >>>>>>> camel-spring 2.0-SNAPSHOT,
>> >>>>>>> camel-cxf 2.0-SNAPSHOT
>> >>>>>>>
>> >>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
>> >>>>>>> so I
>> >>>>>>> can
>> >>>>>>> install them easily in SMX Kernel 1.x
>> >>>>>>>
>> >>>>>>> But these dependencies depends on additional jars which are
>> >>>>>>> potentially
>> >>>>>>> not
>> >>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>> >>>>>>>
>> >>>>>>> Questions :
>> >>>>>>>
>> >>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>> >>>>>>> without
>> >>>>>>> deploying, looking in the log and discovering that dependencies are
>> >>>>>>> unresolved ?
>> >>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
>> >>>>>>> example
>> >>>>>>> the
>> >>>>>>> option 'embed-transitive' of bnd tools (which is used by
>> >>>>>>> maven-felix-plugin
>> >>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>> >>>>>>> in
>> >>>>>>> my
>> >>>>>>> osgi bundle or wrapped separetely
>> >>>>>>>
>> >>>>>>> Regards,
>> >>>>>>>
>> >>>>>>> Charles
>> >>>>>>>
>> >>>>>>> -----
>> >>>>>>> Charles Moulliard
>> >>>>>>> SOA Architect
>> >>>>>>>
>> >>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>> >>>>>>> http://cmoulliard.blogspot.com/
>> >>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> -----
>> >>>>>> ---
>> >>>>>> Gert Vanthienen
>> >>>>>> http://gertvanthienen.blogspot.com
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>> -----
>> >>>>> Charles Moulliard
>> >>>>> SOA Architect
>> >>>>>
>> >>>>> My Blog :  http://cmoulliard.blogspot.com/
>> >>>>> http://cmoulliard.blogspot.com/
>> >>>>> --
>> >>>>> View this message in context:
>> >>>>>
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>> >>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Cheers,
>> >>>> Guillaume Nodet
>> >>>> ------------------------
>> >>>> Blog: http://gnodet.blogspot.com/
>> >>>> ------------------------
>> >>>> Open Source SOA
>> >>>> http://fusesource.com
>> >>>>
>> >>>>
>> >>>
>> >>>
>> >>> -----
>> >>> Charles Moulliard
>> >>> SOA Architect
>> >>>
>> >>> My Blog :  http://cmoulliard.blogspot.com/
>> >>> http://cmoulliard.blogspot.com/
>> >>> --
>> >>> View this message in context:
>> >>>
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
>> >>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >>>
>> >>>
>> >>
>> >
>> >
>> > -----
>> > ---
>> > Gert Vanthienen
>> > http://gertvanthienen.blogspot.com
>> >
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
>> --
>> View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
>

Re: SMX4 Kernel & OSGI librairies strategy

Posted by Chris Custine <ch...@gmail.com>.
>
> Who is 'L.S.' ?


I vaguely remember that this is short for the latin phrase "Lectori Salutem"
which means roughly "greetings to the reader".  I knew that latin class
would be useful some day  :-D

Did I get that right Gert?

Chris
--
Chris Custine
My Blog :: http://blog.organicelement.com
Apache ServiceMix :: http://servicemix.apache.org
Apache Directory Server :: http://directory.apache.org


On Thu, Feb 12, 2009 at 8:09 AM, cmoulliard <cm...@gmail.com> wrote:

>
> Gert,
>
> Who is 'L.S.' ?
>
> Concerning the JIRA ticket :
>
> - Can I help you to define the correct order ?
> - How the mechanism is implemented to generate the features.xml file ?
>
> Regards,
>
>
>
> Gert Vanthienen wrote:
> >
> > L.S.,
> >
> > Actually, I just decided to 'do the right thing' and create a JIRA
> > issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
> >
> > Regards,
> >
> > Gert Vanthienen
> > ------------------------
> > Open Source SOA: http://fusesource.com
> > Blog: http://gertvanthienen.blogspot.com/
> >
> >
> >
> > 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
> >> Charles,
> >>
> >> This is the bug that I need to get fixed tomorrow morning.  As
> >> Guillaume explained, the order is important so the plugin should take
> >> care of getting that right.
> >>
> >> Regards,
> >>
> >> Gert Vanthienen
> >> ------------------------
> >> Open Source SOA: http://fusesource.com
> >> Blog: http://gertvanthienen.blogspot.com/
> >>
> >>
> >>
> >> 2009/2/11 cmoulliard <cm...@gmail.com>:
> >>>
> >>> To be precise, the url must have the following syntax :
> >>>
> >>> addUrl mvn:groupId/artifactId/version/xml/features
> >>>
> >>> and for a file
> >>>
> >>> addUrl file:///d:/temp/features.xml
> >>>
> >>> Question:
> >>>
> >>> When such error is reported,
> >>>
> >>> smx@root:features> install camel-jms
> >>> ERROR CommandLineExecutionFailed:
> >>> org.apache.geronimo.gshell.command.CommandException:
> >>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
> >>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
> >>>
> >>> How can I sove it ?
> >>>
> >>> bundle 53 = spring jms 2.5.6
> >>>
> >>> Surprisingly the features file mentions this :
> >>>
> >>>  <feature name='camel-jms'>
> >>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
> >>>
> >>>
> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
> >>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
> >>>
> >>>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
> >>>
> >>>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
> >>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
> >>>
> >>>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
> >>>
> >>>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
> >>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
> >>>  </feature>
> >>>
> >>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
> >>> javax.jms
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> gnodet wrote:
> >>>>
> >>>> Any url would work.
> >>>> If you want to point to your maven repo, a good way would be to use
> >>>> the maven urls:
> >>>>    mvn:groupId/artifactId/version
> >>>> as in the example Gert gave.
> >>>> That way, you won't have to change it when it's deployed to a remote
> >>>> repository.
> >>>>
> >>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com>
> wrote:
> >>>>>
> >>>>> Can I use the command features/addUrl to point to a local file
> >>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
> >>>>>
> >>>>>
> >>>>>
> >>>>> Gert Vanthienen wrote:
> >>>>>>
> >>>>>> Charles,
> >>>>>>
> >>>>>> For ServiceMix Kernel, we have a features.xml available for
> >>>>>> installing
> >>>>>> camel components.  The latest snapshot is available at
> >>>>>>
> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
> >>>>>> This descriptor is being generated based on the OSGi manifest
> >>>>>> information.  If a JAR is already a bundle, we just include in the
> >>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
> >>>>>> instead. Unfortunately it also look like the latest snapshot is
> >>>>>> broken.
> >>>>>> I'll try to fix that tomorrow morning so you can give it a try.
> >>>>>>
> >>>>>> In order to use it, issue these two commands from the ServiceMix
> >>>>>> console:
> >>>>>> - features/addUrl
> >>>>>>
> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
> >>>>>> - features/install camel-cxf
> >>>>>>
> >>>>>> Another problem is that this is being generated for the latest
> >>>>>> released
> >>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
> >>>>>> because you need some of the fixes that went in that version, right?
> >>>>>> The project definition that is being used to generate the features
> >>>>>> descriptor can be found at
> >>>>>>
> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
> ,
> >>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
> >>>>>> descriptor.
> >>>>>>
> >>>>>> In the long run, we should figure out a way to get this thing
> >>>>>> generated
> >>>>>> for every version of Camel.  I wonder if it would be an option to
> >>>>>> move
> >>>>>> the generation process into the Camel project.  Not sure the
> >>>>>> drawbacks
> >>>>>> outweigh the gains on that one...
> >>>>>>
> >>>>>> Regards,
> >>>>>>
> >>>>>> Gert
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> cmoulliard wrote:
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> I would like to know what is the best/quickest way to design OSGI
> >>>>>>> librairies/bundles for a project ?
> >>>>>>>
> >>>>>>> First of all, let's start with a example : camel + cxf
> >>>>>>>
> >>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
> >>>>>>> create
> >>>>>>> an osgi project for my code. This project can be created using mvn
> >>>>>>> archetype
> >>>>>>> (maven-felix-plugin), bnd or pax-contruct
> >>>>>>>
> >>>>>>> my.company.osgi.camel.cxf
> >>>>>>>
> >>>>>>> Let's says that this osgi bundle depends on :
> >>>>>>>
> >>>>>>> camel-core 2.0-SNAPSHOT,
> >>>>>>> camel-spring 2.0-SNAPSHOT,
> >>>>>>> camel-cxf 2.0-SNAPSHOT
> >>>>>>>
> >>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
> >>>>>>> so I
> >>>>>>> can
> >>>>>>> install them easily in SMX Kernel 1.x
> >>>>>>>
> >>>>>>> But these dependencies depends on additional jars which are
> >>>>>>> potentially
> >>>>>>> not
> >>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
> >>>>>>>
> >>>>>>> Questions :
> >>>>>>>
> >>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
> >>>>>>> without
> >>>>>>> deploying, looking in the log and discovering that dependencies are
> >>>>>>> unresolved ?
> >>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
> >>>>>>> example
> >>>>>>> the
> >>>>>>> option 'embed-transitive' of bnd tools (which is used by
> >>>>>>> maven-felix-plugin
> >>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
> >>>>>>> in
> >>>>>>> my
> >>>>>>> osgi bundle or wrapped separetely
> >>>>>>>
> >>>>>>> Regards,
> >>>>>>>
> >>>>>>> Charles
> >>>>>>>
> >>>>>>> -----
> >>>>>>> Charles Moulliard
> >>>>>>> SOA Architect
> >>>>>>>
> >>>>>>> My Blog :  http://cmoulliard.blogspot.com/
> >>>>>>> http://cmoulliard.blogspot.com/
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> -----
> >>>>>> ---
> >>>>>> Gert Vanthienen
> >>>>>> http://gertvanthienen.blogspot.com
> >>>>>>
> >>>>>
> >>>>>
> >>>>> -----
> >>>>> Charles Moulliard
> >>>>> SOA Architect
> >>>>>
> >>>>> My Blog :  http://cmoulliard.blogspot.com/
> >>>>> http://cmoulliard.blogspot.com/
> >>>>> --
> >>>>> View this message in context:
> >>>>>
> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
> >>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >>>>>
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Cheers,
> >>>> Guillaume Nodet
> >>>> ------------------------
> >>>> Blog: http://gnodet.blogspot.com/
> >>>> ------------------------
> >>>> Open Source SOA
> >>>> http://fusesource.com
> >>>>
> >>>>
> >>>
> >>>
> >>> -----
> >>> Charles Moulliard
> >>> SOA Architect
> >>>
> >>> My Blog :  http://cmoulliard.blogspot.com/
> >>> http://cmoulliard.blogspot.com/
> >>> --
> >>> View this message in context:
> >>>
> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
> >>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >>>
> >>>
> >>
> >
> >
> > -----
> > ---
> > Gert Vanthienen
> > http://gertvanthienen.blogspot.com
> >
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context:
> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Gert,

Who is 'L.S.' ?

Concerning the JIRA ticket :

- Can I help you to define the correct order ? 
- How the mechanism is implemented to generate the features.xml file ? 

Regards,



Gert Vanthienen wrote:
> 
> L.S.,
> 
> Actually, I just decided to 'do the right thing' and create a JIRA
> issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)
> 
> Regards,
> 
> Gert Vanthienen
> ------------------------
> Open Source SOA: http://fusesource.com
> Blog: http://gertvanthienen.blogspot.com/
> 
> 
> 
> 2009/2/11 Gert Vanthienen <ge...@gmail.com>:
>> Charles,
>>
>> This is the bug that I need to get fixed tomorrow morning.  As
>> Guillaume explained, the order is important so the plugin should take
>> care of getting that right.
>>
>> Regards,
>>
>> Gert Vanthienen
>> ------------------------
>> Open Source SOA: http://fusesource.com
>> Blog: http://gertvanthienen.blogspot.com/
>>
>>
>>
>> 2009/2/11 cmoulliard <cm...@gmail.com>:
>>>
>>> To be precise, the url must have the following syntax :
>>>
>>> addUrl mvn:groupId/artifactId/version/xml/features
>>>
>>> and for a file
>>>
>>> addUrl file:///d:/temp/features.xml
>>>
>>> Question:
>>>
>>> When such error is reported,
>>>
>>> smx@root:features> install camel-jms
>>> ERROR CommandLineExecutionFailed:
>>> org.apache.geronimo.gshell.command.CommandException:
>>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
>>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>>>
>>> How can I sove it ?
>>>
>>> bundle 53 = spring jms 2.5.6
>>>
>>> Surprisingly the features file mentions this :
>>>
>>>  <feature name='camel-jms'>
>>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>>>
>>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>>>
>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>>>
>>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>>>
>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>>>
>>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>>>  </feature>
>>>
>>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains
>>> javax.jms
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> gnodet wrote:
>>>>
>>>> Any url would work.
>>>> If you want to point to your maven repo, a good way would be to use
>>>> the maven urls:
>>>>    mvn:groupId/artifactId/version
>>>> as in the example Gert gave.
>>>> That way, you won't have to change it when it's deployed to a remote
>>>> repository.
>>>>
>>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>>>>
>>>>> Can I use the command features/addUrl to point to a local file
>>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>>>>
>>>>>
>>>>>
>>>>> Gert Vanthienen wrote:
>>>>>>
>>>>>> Charles,
>>>>>>
>>>>>> For ServiceMix Kernel, we have a features.xml available for
>>>>>> installing
>>>>>> camel components.  The latest snapshot is available at
>>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>>> This descriptor is being generated based on the OSGi manifest
>>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>>> broken.
>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>>
>>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>>> console:
>>>>>> - features/addUrl
>>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>>> - features/install camel-cxf
>>>>>>
>>>>>> Another problem is that this is being generated for the latest
>>>>>> released
>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>>> because you need some of the fixes that went in that version, right?
>>>>>> The project definition that is being used to generate the features
>>>>>> descriptor can be found at
>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>>> descriptor.
>>>>>>
>>>>>> In the long run, we should figure out a way to get this thing
>>>>>> generated
>>>>>> for every version of Camel.  I wonder if it would be an option to
>>>>>> move
>>>>>> the generation process into the Camel project.  Not sure the
>>>>>> drawbacks
>>>>>> outweigh the gains on that one...
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Gert
>>>>>>
>>>>>>
>>>>>>
>>>>>> cmoulliard wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>>> librairies/bundles for a project ?
>>>>>>>
>>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>>
>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>>> create
>>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>>> archetype
>>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>>
>>>>>>> my.company.osgi.camel.cxf
>>>>>>>
>>>>>>> Let's says that this osgi bundle depends on :
>>>>>>>
>>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>>
>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
>>>>>>> so I
>>>>>>> can
>>>>>>> install them easily in SMX Kernel 1.x
>>>>>>>
>>>>>>> But these dependencies depends on additional jars which are
>>>>>>> potentially
>>>>>>> not
>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>>
>>>>>>> Questions :
>>>>>>>
>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>>> without
>>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>>> unresolved ?
>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
>>>>>>> example
>>>>>>> the
>>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>>> maven-felix-plugin
>>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>>> in
>>>>>>> my
>>>>>>> osgi bundle or wrapped separetely
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Charles
>>>>>>>
>>>>>>> -----
>>>>>>> Charles Moulliard
>>>>>>> SOA Architect
>>>>>>>
>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>>> http://cmoulliard.blogspot.com/
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -----
>>>>>> ---
>>>>>> Gert Vanthienen
>>>>>> http://gertvanthienen.blogspot.com
>>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> Charles Moulliard
>>>>> SOA Architect
>>>>>
>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>> http://cmoulliard.blogspot.com/
>>>>> --
>>>>> View this message in context:
>>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Cheers,
>>>> Guillaume Nodet
>>>> ------------------------
>>>> Blog: http://gnodet.blogspot.com/
>>>> ------------------------
>>>> Open Source SOA
>>>> http://fusesource.com
>>>>
>>>>
>>>
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>> --
>>> View this message in context:
>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>>
> 
> 
> -----
> ---
> Gert Vanthienen
> http://gertvanthienen.blogspot.com
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977875.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@gmail.com>.
L.S.,

Actually, I just decided to 'do the right thing' and create a JIRA
issue for this (https://issues.apache.org/activemq/browse/SMX4-215) ;)

Regards,

Gert Vanthienen
------------------------
Open Source SOA: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



2009/2/11 Gert Vanthienen <ge...@gmail.com>:
> Charles,
>
> This is the bug that I need to get fixed tomorrow morning.  As
> Guillaume explained, the order is important so the plugin should take
> care of getting that right.
>
> Regards,
>
> Gert Vanthienen
> ------------------------
> Open Source SOA: http://fusesource.com
> Blog: http://gertvanthienen.blogspot.com/
>
>
>
> 2009/2/11 cmoulliard <cm...@gmail.com>:
>>
>> To be precise, the url must have the following syntax :
>>
>> addUrl mvn:groupId/artifactId/version/xml/features
>>
>> and for a file
>>
>> addUrl file:///d:/temp/features.xml
>>
>> Question:
>>
>> When such error is reported,
>>
>> smx@root:features> install camel-jms
>> ERROR CommandLineExecutionFailed:
>> org.apache.geronimo.gshell.command.CommandException:
>> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
>> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>>
>> How can I sove it ?
>>
>> bundle 53 = spring jms 2.5.6
>>
>> Surprisingly the features file mentions this :
>>
>>  <feature name='camel-jms'>
>>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>>
>> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>>
>> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>>
>> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>>  </feature>
>>
>> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains javax.jms
>>
>>
>>
>>
>>
>>
>>
>> gnodet wrote:
>>>
>>> Any url would work.
>>> If you want to point to your maven repo, a good way would be to use
>>> the maven urls:
>>>    mvn:groupId/artifactId/version
>>> as in the example Gert gave.
>>> That way, you won't have to change it when it's deployed to a remote
>>> repository.
>>>
>>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>>>
>>>> Can I use the command features/addUrl to point to a local file
>>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>>>
>>>>
>>>>
>>>> Gert Vanthienen wrote:
>>>>>
>>>>> Charles,
>>>>>
>>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>>> camel components.  The latest snapshot is available at
>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>> This descriptor is being generated based on the OSGi manifest
>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>> instead. Unfortunately it also look like the latest snapshot is broken.
>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>
>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>> console:
>>>>> - features/addUrl
>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>> - features/install camel-cxf
>>>>>
>>>>> Another problem is that this is being generated for the latest released
>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>> because you need some of the fixes that went in that version, right?
>>>>> The project definition that is being used to generate the features
>>>>> descriptor can be found at
>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>> descriptor.
>>>>>
>>>>> In the long run, we should figure out a way to get this thing generated
>>>>> for every version of Camel.  I wonder if it would be an option to move
>>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>>> outweigh the gains on that one...
>>>>>
>>>>> Regards,
>>>>>
>>>>> Gert
>>>>>
>>>>>
>>>>>
>>>>> cmoulliard wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>> librairies/bundles for a project ?
>>>>>>
>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>
>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>> create
>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>> archetype
>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>
>>>>>> my.company.osgi.camel.cxf
>>>>>>
>>>>>> Let's says that this osgi bundle depends on :
>>>>>>
>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>
>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>>>> can
>>>>>> install them easily in SMX Kernel 1.x
>>>>>>
>>>>>> But these dependencies depends on additional jars which are potentially
>>>>>> not
>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>
>>>>>> Questions :
>>>>>>
>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>> without
>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>> unresolved ?
>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>>> the
>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>> maven-felix-plugin
>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>>>> my
>>>>>> osgi bundle or wrapped separetely
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Charles
>>>>>>
>>>>>> -----
>>>>>> Charles Moulliard
>>>>>> SOA Architect
>>>>>>
>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>> http://cmoulliard.blogspot.com/
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> ---
>>>>> Gert Vanthienen
>>>>> http://gertvanthienen.blogspot.com
>>>>>
>>>>
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Cheers,
>>> Guillaume Nodet
>>> ------------------------
>>> Blog: http://gnodet.blogspot.com/
>>> ------------------------
>>> Open Source SOA
>>> http://fusesource.com
>>>
>>>
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
>> --
>> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
>

Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@gmail.com>.
Charles,

This is the bug that I need to get fixed tomorrow morning.  As
Guillaume explained, the order is important so the plugin should take
care of getting that right.

Regards,

Gert Vanthienen
------------------------
Open Source SOA: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



2009/2/11 cmoulliard <cm...@gmail.com>:
>
> To be precise, the url must have the following syntax :
>
> addUrl mvn:groupId/artifactId/version/xml/features
>
> and for a file
>
> addUrl file:///d:/temp/features.xml
>
> Question:
>
> When such error is reported,
>
> smx@root:features> install camel-jms
> ERROR CommandLineExecutionFailed:
> org.apache.geronimo.gshell.command.CommandException:
> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>
> How can I sove it ?
>
> bundle 53 = spring jms 2.5.6
>
> Surprisingly the features file mentions this :
>
>  <feature name='camel-jms'>
>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>
> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>  </feature>
>
> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains javax.jms
>
>
>
>
>
>
>
> gnodet wrote:
>>
>> Any url would work.
>> If you want to point to your maven repo, a good way would be to use
>> the maven urls:
>>    mvn:groupId/artifactId/version
>> as in the example Gert gave.
>> That way, you won't have to change it when it's deployed to a remote
>> repository.
>>
>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>>
>>> Can I use the command features/addUrl to point to a local file
>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>>
>>>
>>>
>>> Gert Vanthienen wrote:
>>>>
>>>> Charles,
>>>>
>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>> camel components.  The latest snapshot is available at
>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>> This descriptor is being generated based on the OSGi manifest
>>>> information.  If a JAR is already a bundle, we just include in the
>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>> instead. Unfortunately it also look like the latest snapshot is broken.
>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>
>>>> In order to use it, issue these two commands from the ServiceMix
>>>> console:
>>>> - features/addUrl
>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>> - features/install camel-cxf
>>>>
>>>> Another problem is that this is being generated for the latest released
>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>> because you need some of the fixes that went in that version, right?
>>>> The project definition that is being used to generate the features
>>>> descriptor can be found at
>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>> descriptor.
>>>>
>>>> In the long run, we should figure out a way to get this thing generated
>>>> for every version of Camel.  I wonder if it would be an option to move
>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>> outweigh the gains on that one...
>>>>
>>>> Regards,
>>>>
>>>> Gert
>>>>
>>>>
>>>>
>>>> cmoulliard wrote:
>>>>> Hi,
>>>>>
>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>> librairies/bundles for a project ?
>>>>>
>>>>> First of all, let's start with a example : camel + cxf
>>>>>
>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>> create
>>>>> an osgi project for my code. This project can be created using mvn
>>>>> archetype
>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>
>>>>> my.company.osgi.camel.cxf
>>>>>
>>>>> Let's says that this osgi bundle depends on :
>>>>>
>>>>> camel-core 2.0-SNAPSHOT,
>>>>> camel-spring 2.0-SNAPSHOT,
>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>
>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>>> can
>>>>> install them easily in SMX Kernel 1.x
>>>>>
>>>>> But these dependencies depends on additional jars which are potentially
>>>>> not
>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>
>>>>> Questions :
>>>>>
>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>> without
>>>>> deploying, looking in the log and discovering that dependencies are
>>>>> unresolved ?
>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>> the
>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>> maven-felix-plugin
>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>>> my
>>>>> osgi bundle or wrapped separetely
>>>>>
>>>>> Regards,
>>>>>
>>>>> Charles
>>>>>
>>>>> -----
>>>>> Charles Moulliard
>>>>> SOA Architect
>>>>>
>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>> http://cmoulliard.blogspot.com/
>>>>>
>>>>
>>>>
>>>>
>>>> -----
>>>> ---
>>>> Gert Vanthienen
>>>> http://gertvanthienen.blogspot.com
>>>>
>>>
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>> --
>>> View this message in context:
>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>>
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>

Re: SMX4 Kernel & OSGI librairies strategy

Posted by Guillaume Nodet <gn...@gmail.com>.
The order of the bundles listed inside the feature is meaninfull.
So you need to change it so that bundles can be started correctly.
Try putting jta and jms specs first.

On Wed, Feb 11, 2009 at 16:00, cmoulliard <cm...@gmail.com> wrote:
>
> To be precise, the url must have the following syntax :
>
> addUrl mvn:groupId/artifactId/version/xml/features
>
> and for a file
>
> addUrl file:///d:/temp/features.xml
>
> Question:
>
> When such error is reported,
>
> smx@root:features> install camel-jms
> ERROR CommandLineExecutionFailed:
> org.apache.geronimo.gshell.command.CommandException:
> org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
> package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))
>
> How can I sove it ?
>
> bundle 53 = spring jms 2.5.6
>
> Surprisingly the features file mentions this :
>
>  <feature name='camel-jms'>
>    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
>
> <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
>    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
>
> <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
>    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
>
> <bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
>    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
>  </feature>
>
> and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains javax.jms
>
>
>
>
>
>
>
> gnodet wrote:
>>
>> Any url would work.
>> If you want to point to your maven repo, a good way would be to use
>> the maven urls:
>>    mvn:groupId/artifactId/version
>> as in the example Gert gave.
>> That way, you won't have to change it when it's deployed to a remote
>> repository.
>>
>> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>>
>>> Can I use the command features/addUrl to point to a local file
>>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>>
>>>
>>>
>>> Gert Vanthienen wrote:
>>>>
>>>> Charles,
>>>>
>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>> camel components.  The latest snapshot is available at
>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>> This descriptor is being generated based on the OSGi manifest
>>>> information.  If a JAR is already a bundle, we just include in the
>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>> instead. Unfortunately it also look like the latest snapshot is broken.
>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>
>>>> In order to use it, issue these two commands from the ServiceMix
>>>> console:
>>>> - features/addUrl
>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>> - features/install camel-cxf
>>>>
>>>> Another problem is that this is being generated for the latest released
>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>> because you need some of the fixes that went in that version, right?
>>>> The project definition that is being used to generate the features
>>>> descriptor can be found at
>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>> descriptor.
>>>>
>>>> In the long run, we should figure out a way to get this thing generated
>>>> for every version of Camel.  I wonder if it would be an option to move
>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>> outweigh the gains on that one...
>>>>
>>>> Regards,
>>>>
>>>> Gert
>>>>
>>>>
>>>>
>>>> cmoulliard wrote:
>>>>> Hi,
>>>>>
>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>> librairies/bundles for a project ?
>>>>>
>>>>> First of all, let's start with a example : camel + cxf
>>>>>
>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>> create
>>>>> an osgi project for my code. This project can be created using mvn
>>>>> archetype
>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>
>>>>> my.company.osgi.camel.cxf
>>>>>
>>>>> Let's says that this osgi bundle depends on :
>>>>>
>>>>> camel-core 2.0-SNAPSHOT,
>>>>> camel-spring 2.0-SNAPSHOT,
>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>
>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>>> can
>>>>> install them easily in SMX Kernel 1.x
>>>>>
>>>>> But these dependencies depends on additional jars which are potentially
>>>>> not
>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>
>>>>> Questions :
>>>>>
>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>> without
>>>>> deploying, looking in the log and discovering that dependencies are
>>>>> unresolved ?
>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>> the
>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>> maven-felix-plugin
>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>>> my
>>>>> osgi bundle or wrapped separetely
>>>>>
>>>>> Regards,
>>>>>
>>>>> Charles
>>>>>
>>>>> -----
>>>>> Charles Moulliard
>>>>> SOA Architect
>>>>>
>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>> http://cmoulliard.blogspot.com/
>>>>>
>>>>
>>>>
>>>>
>>>> -----
>>>> ---
>>>> Gert Vanthienen
>>>> http://gertvanthienen.blogspot.com
>>>>
>>>
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>> --
>>> View this message in context:
>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>>
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
To be precise, the url must have the following syntax :

addUrl mvn:groupId/artifactId/version/xml/features

and for a file 

addUrl file:///d:/temp/features.xml

Question: 

When such error is reported,

smx@root:features> install camel-jms
ERROR CommandLineExecutionFailed:
org.apache.geronimo.gshell.command.CommandException:
org.osgi.framework.BundleException: Unresolved constraint in bundle 53:
package; (&(package=javax.jms)(version>=1.1.0)(!(version>=2.0.0)))

How can I sove it ?

bundle 53 = spring jms 2.5.6

Surprisingly the features file mentions this :

  <feature name='camel-jms'>
    <bundle>mvn:org.springframework/spring-tx/2.5.6</bundle>
   
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/1.2.2_1</bundle>
    <bundle>mvn:org.springframework/spring-jms/2.5.6</bundle>
   
<bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.2-SNAPSHOT</bundle>
   
<bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/1.2-SNAPSHOT</bundle>
    <bundle>mvn:org.apache.camel/camel-core/2.0-SNAPSHOT</bundle>
   
<bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/1.1.1</bundle>
   
<bundle>mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1</bundle>
    <bundle>mvn:org.apache.camel/camel-jms/2.0-SNAPSHOT</bundle>
  </feature>

and org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1 contains javax.jms







gnodet wrote:
> 
> Any url would work.
> If you want to point to your maven repo, a good way would be to use
> the maven urls:
>    mvn:groupId/artifactId/version
> as in the example Gert gave.
> That way, you won't have to change it when it's deployed to a remote
> repository.
> 
> On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>>
>> Can I use the command features/addUrl to point to a local file
>> (d:/temp/features.xml) or to my internal maven repository (How) ?
>>
>>
>>
>> Gert Vanthienen wrote:
>>>
>>> Charles,
>>>
>>> For ServiceMix Kernel, we have a features.xml available for installing
>>> camel components.  The latest snapshot is available at
>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>> This descriptor is being generated based on the OSGi manifest
>>> information.  If a JAR is already a bundle, we just include in the
>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>> instead. Unfortunately it also look like the latest snapshot is broken.
>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>
>>> In order to use it, issue these two commands from the ServiceMix
>>> console:
>>> - features/addUrl
>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>> - features/install camel-cxf
>>>
>>> Another problem is that this is being generated for the latest released
>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>> because you need some of the fixes that went in that version, right?
>>> The project definition that is being used to generate the features
>>> descriptor can be found at
>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>> descriptor.
>>>
>>> In the long run, we should figure out a way to get this thing generated
>>> for every version of Camel.  I wonder if it would be an option to move
>>> the generation process into the Camel project.  Not sure the drawbacks
>>> outweigh the gains on that one...
>>>
>>> Regards,
>>>
>>> Gert
>>>
>>>
>>>
>>> cmoulliard wrote:
>>>> Hi,
>>>>
>>>> I would like to know what is the best/quickest way to design OSGI
>>>> librairies/bundles for a project ?
>>>>
>>>> First of all, let's start with a example : camel + cxf
>>>>
>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>> create
>>>> an osgi project for my code. This project can be created using mvn
>>>> archetype
>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>
>>>> my.company.osgi.camel.cxf
>>>>
>>>> Let's says that this osgi bundle depends on :
>>>>
>>>> camel-core 2.0-SNAPSHOT,
>>>> camel-spring 2.0-SNAPSHOT,
>>>> camel-cxf 2.0-SNAPSHOT
>>>>
>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>> can
>>>> install them easily in SMX Kernel 1.x
>>>>
>>>> But these dependencies depends on additional jars which are potentially
>>>> not
>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>
>>>> Questions :
>>>>
>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>> without
>>>> deploying, looking in the log and discovering that dependencies are
>>>> unresolved ?
>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>> the
>>>> option 'embed-transitive' of bnd tools (which is used by
>>>> maven-felix-plugin
>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>> my
>>>> osgi bundle or wrapped separetely
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>>
>>>
>>>
>>>
>>> -----
>>> ---
>>> Gert Vanthienen
>>> http://gertvanthienen.blogspot.com
>>>
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/
>> --
>> View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
> 
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21956770.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Guillaume Nodet <gn...@gmail.com>.
Any url would work.
If you want to point to your maven repo, a good way would be to use
the maven urls:
   mvn:groupId/artifactId/version
as in the example Gert gave.
That way, you won't have to change it when it's deployed to a remote repository.

On Wed, Feb 11, 2009 at 15:12, cmoulliard <cm...@gmail.com> wrote:
>
> Can I use the command features/addUrl to point to a local file
> (d:/temp/features.xml) or to my internal maven repository (How) ?
>
>
>
> Gert Vanthienen wrote:
>>
>> Charles,
>>
>> For ServiceMix Kernel, we have a features.xml available for installing
>> camel components.  The latest snapshot is available at
>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>> This descriptor is being generated based on the OSGi manifest
>> information.  If a JAR is already a bundle, we just include in the
>> feature.  For other JARs, we built a ServiceMix bundle and use that
>> instead. Unfortunately it also look like the latest snapshot is broken.
>> I'll try to fix that tomorrow morning so you can give it a try.
>>
>> In order to use it, issue these two commands from the ServiceMix console:
>> - features/addUrl
>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>> - features/install camel-cxf
>>
>> Another problem is that this is being generated for the latest released
>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>> because you need some of the fixes that went in that version, right?
>> The project definition that is being used to generate the features
>> descriptor can be found at
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>> descriptor.
>>
>> In the long run, we should figure out a way to get this thing generated
>> for every version of Camel.  I wonder if it would be an option to move
>> the generation process into the Camel project.  Not sure the drawbacks
>> outweigh the gains on that one...
>>
>> Regards,
>>
>> Gert
>>
>>
>>
>> cmoulliard wrote:
>>> Hi,
>>>
>>> I would like to know what is the best/quickest way to design OSGI
>>> librairies/bundles for a project ?
>>>
>>> First of all, let's start with a example : camel + cxf
>>>
>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>> create
>>> an osgi project for my code. This project can be created using mvn
>>> archetype
>>> (maven-felix-plugin), bnd or pax-contruct
>>>
>>> my.company.osgi.camel.cxf
>>>
>>> Let's says that this osgi bundle depends on :
>>>
>>> camel-core 2.0-SNAPSHOT,
>>> camel-spring 2.0-SNAPSHOT,
>>> camel-cxf 2.0-SNAPSHOT
>>>
>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>> can
>>> install them easily in SMX Kernel 1.x
>>>
>>> But these dependencies depends on additional jars which are potentially
>>> not
>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>
>>> Questions :
>>>
>>> - How can I easily/quickly detect which jars are not 'osgi'fied' without
>>> deploying, looking in the log and discovering that dependencies are
>>> unresolved ?
>>> - What is the best strategy to OSGIfied them ? I mean 'use by example the
>>> option 'embed-transitive' of bnd tools (which is used by
>>> maven-felix-plugin
>>> or pax-constrcut)'. But the risk is that too much jars are embedded in my
>>> osgi bundle or wrapped separetely
>>>
>>> Regards,
>>>
>>> Charles
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>>
>>
>>
>>
>> -----
>> ---
>> Gert Vanthienen
>> http://gertvanthienen.blogspot.com
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Can I use the command features/addUrl to point to a local file
(d:/temp/features.xml) or to my internal maven repository (How) ?



Gert Vanthienen wrote:
> 
> Charles,
> 
> For ServiceMix Kernel, we have a features.xml available for installing 
> camel components.  The latest snapshot is available at 
> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
> This descriptor is being generated based on the OSGi manifest 
> information.  If a JAR is already a bundle, we just include in the 
> feature.  For other JARs, we built a ServiceMix bundle and use that 
> instead. Unfortunately it also look like the latest snapshot is broken.  
> I'll try to fix that tomorrow morning so you can give it a try.
> 
> In order to use it, issue these two commands from the ServiceMix console:
> - features/addUrl 
> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
> - features/install camel-cxf
> 
> Another problem is that this is being generated for the latest released 
> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
> because you need some of the fixes that went in that version, right?  
> The project definition that is being used to generate the features 
> descriptor can be found at 
> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
> descriptor. 
> 
> In the long run, we should figure out a way to get this thing generated 
> for every version of Camel.  I wonder if it would be an option to move 
> the generation process into the Camel project.  Not sure the drawbacks 
> outweigh the gains on that one...
> 
> Regards,
> 
> Gert
> 
> 
> 
> cmoulliard wrote:
>> Hi,
>>
>> I would like to know what is the best/quickest way to design OSGI
>> librairies/bundles for a project ?
>>
>> First of all, let's start with a example : camel + cxf
>>
>> To deploy such a project top of SMX kernel 1.x, I need of course to
>> create
>> an osgi project for my code. This project can be created using mvn
>> archetype
>> (maven-felix-plugin), bnd or pax-contruct
>>
>> my.company.osgi.camel.cxf
>>
>> Let's says that this osgi bundle depends on :
>>
>> camel-core 2.0-SNAPSHOT,
>> camel-spring 2.0-SNAPSHOT,
>> camel-cxf 2.0-SNAPSHOT
>>
>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>> can
>> install them easily in SMX Kernel 1.x
>>
>> But these dependencies depends on additional jars which are potentially
>> not
>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>>
>> Questions :
>>
>> - How can I easily/quickly detect which jars are not 'osgi'fied' without
>> deploying, looking in the log and discovering that dependencies are
>> unresolved ?
>> - What is the best strategy to OSGIfied them ? I mean 'use by example the
>> option 'embed-transitive' of bnd tools (which is used by
>> maven-felix-plugin
>> or pax-constrcut)'. But the risk is that too much jars are embedded in my
>> osgi bundle or wrapped separetely 
>>
>> Regards,
>>
>> Charles
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/  
>>   
> 
> 
> 
> -----
> ---
> Gert Vanthienen
> http://gertvanthienen.blogspot.com
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955729.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Guillaume Nodet <gn...@gmail.com>.
Try
  http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/

On Wed, Feb 11, 2009 at 13:57, cmoulliard <cm...@gmail.com> wrote:
>
> Many thanks Gert. You save me because I was bory with bnd and pax-construct
> to add dependencie.
>
> Question : Is it pax-runner which is used behind features or another tool ?
>
> Another problem is that this is being generated for the latest released
> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
> because you need some of the fixes that went in that version, right?
>
> Answer : Yes
>
> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>
> I don't have access to this part of the web site which is password protected
> for ASF commiter.
>
> Have you the link for anonymous access ?
>
> Regards,
>
> Charles
>
>
>
> Gert Vanthienen wrote:
>>
>> Charles,
>>
>> For ServiceMix Kernel, we have a features.xml available for installing
>> camel components.  The latest snapshot is available at
>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>> This descriptor is being generated based on the OSGi manifest
>> information.  If a JAR is already a bundle, we just include in the
>> feature.  For other JARs, we built a ServiceMix bundle and use that
>> instead. Unfortunately it also look like the latest snapshot is broken.
>> I'll try to fix that tomorrow morning so you can give it a try.
>>
>> In order to use it, issue these two commands from the ServiceMix console:
>> - features/addUrl
>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>> - features/install camel-cxf
>>
>> Another problem is that this is being generated for the latest released
>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>> because you need some of the fixes that went in that version, right?
>> The project definition that is being used to generate the features
>> descriptor can be found at
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>> descriptor.
>>
>> In the long run, we should figure out a way to get this thing generated
>> for every version of Camel.  I wonder if it would be an option to move
>> the generation process into the Camel project.  Not sure the drawbacks
>> outweigh the gains on that one...
>>
>> Regards,
>>
>> Gert
>>
>>
>>
>> cmoulliard wrote:
>>> Hi,
>>>
>>> I would like to know what is the best/quickest way to design OSGI
>>> librairies/bundles for a project ?
>>>
>>> First of all, let's start with a example : camel + cxf
>>>
>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>> create
>>> an osgi project for my code. This project can be created using mvn
>>> archetype
>>> (maven-felix-plugin), bnd or pax-contruct
>>>
>>> my.company.osgi.camel.cxf
>>>
>>> Let's says that this osgi bundle depends on :
>>>
>>> camel-core 2.0-SNAPSHOT,
>>> camel-spring 2.0-SNAPSHOT,
>>> camel-cxf 2.0-SNAPSHOT
>>>
>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>> can
>>> install them easily in SMX Kernel 1.x
>>>
>>> But these dependencies depends on additional jars which are potentially
>>> not
>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>
>>> Questions :
>>>
>>> - How can I easily/quickly detect which jars are not 'osgi'fied' without
>>> deploying, looking in the log and discovering that dependencies are
>>> unresolved ?
>>> - What is the best strategy to OSGIfied them ? I mean 'use by example the
>>> option 'embed-transitive' of bnd tools (which is used by
>>> maven-felix-plugin
>>> or pax-constrcut)'. But the risk is that too much jars are embedded in my
>>> osgi bundle or wrapped separetely
>>>
>>> Regards,
>>>
>>> Charles
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>>
>>
>>
>>
>> -----
>> ---
>> Gert Vanthienen
>> http://gertvanthienen.blogspot.com
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954197.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Gert,

Is there a wiki/web page describing the goals/usage of the
maven-features-plugin ?

Regards,



Gert Vanthienen wrote:
> 
> Charles,
> 
> No, we don't use pax-runner for this.  This is being generated by a 
> Maven plugin created specifically for the ServiceMix Kernel project.  
> The plugin knows about ServiceMix Kernel and it will only add bundles 
> that are required to get thing running on Kernel.  The plugin is 
> designed to look at the OSGi imports and tries to find the bundles to 
> satisfy the required imports by looking at the pom dependencies and a 
> list of bundles (src/main/resources/bundles.properties in the project I 
> mentioned).
> 
> The public URL for the same repo location is 
> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.  
> Just let me know if you have any problems setting things up.  The 
> remaining issue I mentioned is about the order of the bundles in the 
> feature descriptor, so I'll fix that tomorrow morning but at least the 
> plugin should give you a list of suitable bundles so you can always 
> install the ones that are out of order using osgi/install until this is 
> fixed.
> 
> Regards,
> 
> Gert
> 
> 
> cmoulliard wrote:
>> Many thanks Gert. You save me because I was bory with bnd and
>> pax-construct
>> to add dependencie.
>>
>> Question : Is it pax-runner which is used behind features or another tool
>> ?
>>
>> Another problem is that this is being generated for the latest released 
>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
>> because you need some of the fixes that went in that version, right? 
>>
>> Answer : Yes
>>
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>
>> I don't have access to this part of the web site which is password
>> protected
>> for ASF commiter.
>>
>> Have you the link for anonymous access ?
>>
>> Regards,
>>
>> Charles
>>
>>
>>
>> Gert Vanthienen wrote:
>>   
>>> Charles,
>>>
>>> For ServiceMix Kernel, we have a features.xml available for installing 
>>> camel components.  The latest snapshot is available at 
>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>> This descriptor is being generated based on the OSGi manifest 
>>> information.  If a JAR is already a bundle, we just include in the 
>>> feature.  For other JARs, we built a ServiceMix bundle and use that 
>>> instead. Unfortunately it also look like the latest snapshot is broken.  
>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>
>>> In order to use it, issue these two commands from the ServiceMix
>>> console:
>>> - features/addUrl 
>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>> - features/install camel-cxf
>>>
>>> Another problem is that this is being generated for the latest released 
>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
>>> because you need some of the fixes that went in that version, right?  
>>> The project definition that is being used to generate the features 
>>> descriptor can be found at 
>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
>>> descriptor. 
>>>
>>> In the long run, we should figure out a way to get this thing generated 
>>> for every version of Camel.  I wonder if it would be an option to move 
>>> the generation process into the Camel project.  Not sure the drawbacks 
>>> outweigh the gains on that one...
>>>
>>> Regards,
>>>
>>> Gert
>>>
>>>
>>>
>>> cmoulliard wrote:
>>>     
>>>> Hi,
>>>>
>>>> I would like to know what is the best/quickest way to design OSGI
>>>> librairies/bundles for a project ?
>>>>
>>>> First of all, let's start with a example : camel + cxf
>>>>
>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>> create
>>>> an osgi project for my code. This project can be created using mvn
>>>> archetype
>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>
>>>> my.company.osgi.camel.cxf
>>>>
>>>> Let's says that this osgi bundle depends on :
>>>>
>>>> camel-core 2.0-SNAPSHOT,
>>>> camel-spring 2.0-SNAPSHOT,
>>>> camel-cxf 2.0-SNAPSHOT
>>>>
>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>> can
>>>> install them easily in SMX Kernel 1.x
>>>>
>>>> But these dependencies depends on additional jars which are potentially
>>>> not
>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>>>>
>>>> Questions :
>>>>
>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>> without
>>>> deploying, looking in the log and discovering that dependencies are
>>>> unresolved ?
>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>> the
>>>> option 'embed-transitive' of bnd tools (which is used by
>>>> maven-felix-plugin
>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>> my
>>>> osgi bundle or wrapped separetely 
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/  
>>>>   
>>>>       
>>>
>>> -----
>>> ---
>>> Gert Vanthienen
>>> http://gertvanthienen.blogspot.com
>>>
>>>     
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/  
>>   
> 
> 
> 
> -----
> ---
> Gert Vanthienen
> http://gertvanthienen.blogspot.com
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21955153.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Thanks Guillaume,

I will test this.


gnodet wrote:
> 
> Yes, this is doable.  You need to deploy the "web" feature from
> https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/assembly/src/main/filtered-resources/features.xml
> and you should be able to deploy wars in the deploy folder or from the
> command line.
> Alternatively, you could also deploy the spring bundles needed for war
> support I suppose.
> 
> On Wed, Feb 11, 2009 at 14:35, cmoulliard <cm...@gmail.com> wrote:
>>
>> Thanks Gert.
>>
>> I have found the project mentioned in svn (according to your url). I
>> launch
>> mvn command and will see the result.
>>
>> Question : Is it possible with servicemix4 to deploy war project (I mean
>> a
>> war where we have dependencies with OSGI bundles) in tomcat/jetty like
>> this
>> is possible in Spring DM Server ?
>>
>> Regards,
>>
>> Charles
>>
>>
>> Gert Vanthienen wrote:
>>>
>>> Charles,
>>>
>>> No, we don't use pax-runner for this.  This is being generated by a
>>> Maven plugin created specifically for the ServiceMix Kernel project.
>>> The plugin knows about ServiceMix Kernel and it will only add bundles
>>> that are required to get thing running on Kernel.  The plugin is
>>> designed to look at the OSGi imports and tries to find the bundles to
>>> satisfy the required imports by looking at the pom dependencies and a
>>> list of bundles (src/main/resources/bundles.properties in the project I
>>> mentioned).
>>>
>>> The public URL for the same repo location is
>>> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.
>>> Just let me know if you have any problems setting things up.  The
>>> remaining issue I mentioned is about the order of the bundles in the
>>> feature descriptor, so I'll fix that tomorrow morning but at least the
>>> plugin should give you a list of suitable bundles so you can always
>>> install the ones that are out of order using osgi/install until this is
>>> fixed.
>>>
>>> Regards,
>>>
>>> Gert
>>>
>>>
>>> cmoulliard wrote:
>>>> Many thanks Gert. You save me because I was bory with bnd and
>>>> pax-construct
>>>> to add dependencie.
>>>>
>>>> Question : Is it pax-runner which is used behind features or another
>>>> tool
>>>> ?
>>>>
>>>> Another problem is that this is being generated for the latest released
>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>> because you need some of the fixes that went in that version, right?
>>>>
>>>> Answer : Yes
>>>>
>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>>>
>>>> I don't have access to this part of the web site which is password
>>>> protected
>>>> for ASF commiter.
>>>>
>>>> Have you the link for anonymous access ?
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>>
>>>>
>>>> Gert Vanthienen wrote:
>>>>
>>>>> Charles,
>>>>>
>>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>>> camel components.  The latest snapshot is available at
>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>> This descriptor is being generated based on the OSGi manifest
>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>> broken.
>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>
>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>> console:
>>>>> - features/addUrl
>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>> - features/install camel-cxf
>>>>>
>>>>> Another problem is that this is being generated for the latest
>>>>> released
>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>> because you need some of the fixes that went in that version, right?
>>>>> The project definition that is being used to generate the features
>>>>> descriptor can be found at
>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>> descriptor.
>>>>>
>>>>> In the long run, we should figure out a way to get this thing
>>>>> generated
>>>>> for every version of Camel.  I wonder if it would be an option to move
>>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>>> outweigh the gains on that one...
>>>>>
>>>>> Regards,
>>>>>
>>>>> Gert
>>>>>
>>>>>
>>>>>
>>>>> cmoulliard wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>> librairies/bundles for a project ?
>>>>>>
>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>
>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>> create
>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>> archetype
>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>
>>>>>> my.company.osgi.camel.cxf
>>>>>>
>>>>>> Let's says that this osgi bundle depends on :
>>>>>>
>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>
>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so
>>>>>> I
>>>>>> can
>>>>>> install them easily in SMX Kernel 1.x
>>>>>>
>>>>>> But these dependencies depends on additional jars which are
>>>>>> potentially
>>>>>> not
>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>
>>>>>> Questions :
>>>>>>
>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>> without
>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>> unresolved ?
>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>>> the
>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>> maven-felix-plugin
>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>> in
>>>>>> my
>>>>>> osgi bundle or wrapped separetely
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Charles
>>>>>>
>>>>>> -----
>>>>>> Charles Moulliard
>>>>>> SOA Architect
>>>>>>
>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>> http://cmoulliard.blogspot.com/
>>>>>>
>>>>>>
>>>>>
>>>>> -----
>>>>> ---
>>>>> Gert Vanthienen
>>>>> http://gertvanthienen.blogspot.com
>>>>>
>>>>>
>>>>
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>>
>>>
>>>
>>>
>>> -----
>>> ---
>>> Gert Vanthienen
>>> http://gertvanthienen.blogspot.com
>>>
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/
>> --
>> View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
> 
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21977936.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
thks

I will create a JIRA ticket to report the different errors discovered.

1) By the way, I see that PAX Web JSP is there but nevertheless a it does
not work  even for a small HelloWorld example where we have a Servlet and
jsp page

[  52] [Active     ] [       ] [   60] Apache ServiceMix Bundles:
jetty-6.1.14 (6.1.14.SNAPSHOT)
[  54] [Active     ] [       ] [   60] OPS4J Pax Web - Web Container (0.4.1)
[  55] [Active     ] [       ] [   60] OPS4J Pax Web - Jsp Support (0.4.1)
[  56] [Active     ] [       ] [   60] OPS4J Pax Web Extender - WAR (0.3.0)
[  57] [Active     ] [       ] [   60] OPS4J Pax Web Extender - Whiteboard
(0.3.0)
[  58] [Active     ] [       ] [   60] OPS4J Pax Url - war:, war-i: (0.3.2)
[  59] [Active     ] [Started] [   60] Apache ServiceMix WAR Deployer
(4.0.0.m2-SNAPSHOT)
[  72] [Active     ] [       ] [   60]
file__C__Workspace_SMX4_apache-servicemix-kernel-1.1.0-SNAPSHOT_deploy_sample.war
(0)

I can't reach the url (http://localhost:8080/sample/index.html or
/sample/hello)

2) I have been able to add the following bundles :

[  63] [Active     ] [       ] [   60] OPS4J Pax Web - Jsp Support (0.5.1)
[  64] [Active     ] [       ] [   60] OPS4J Pax Web Extender - Whiteboard
(0.4.0)
[  65] [Installed  ] [       ] [   60] OPS4J Pax Url - war:, war-i: (0.3.3)
[  66] [Active     ] [       ] [   60] OPS4J Pax Web Extender - WAR (0.4.0)
[  67] [Active     ] [       ] [   60] OPS4J Pax Web - Web Container (0.5.1)

but the bundle Pax Url - war:, war-i: (0.3.3) generates the following error
at the startup

ERROR CommandLineExecutionFailed:
org.apache.geronimo.gshell.command.CommandException:
org.osgi.framework.BundleException: Unable to resolve due to constraint
violation.

org.osgi.framework.BundleException: Unable to resolve due to constraint
violation.
	at org.apache.felix.framework.Felix._resolveBundle(Felix.java:1732)
	at org.apache.felix.framework.Felix._startBundle(Felix.java:1588)
	at org.apache.felix.framework.Felix.startBundle(Felix.java:1541)
	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:371)
	at
org.apache.servicemix.kernel.filemonitor.FileMonitor.refreshPackagesAndStartOrUpdateBundles(FileMonitor.java:543)
	at
org.apache.servicemix.kernel.filemonitor.FileMonitor.onFilesChanged(FileMonitor.java:290)
	at
org.apache.servicemix.kernel.filemonitor.FileMonitor$1.filesChanged(FileMonitor.java:143)
	at
org.apache.servicemix.kernel.filemonitor.Scanner.reportBulkChanges(Scanner.java:433)
	at
org.apache.servicemix.kernel.filemonitor.Scanner.reportDifferences(Scanner.java:322)
	at org.apache.servicemix.kernel.filemonitor.Scanner.scan(Scanner.java:254)
	at org.apache.servicemix.kernel.filemonitor.Scanner$1.run(Scanner.java:214)
	at java.util.TimerThread.mainLoop(Timer.java:512)
	at java.util.TimerThread.run(Timer.java:462)




gnodet wrote:
> 
> 2009/2/13 cmoulliard <cm...@gmail.com>:
>>
>> I see that the command :
>>
>> install web,
>> install web-core
>>
>> are not enough
>>
>> We need additional OSGI bundles like :
>>
>> http://wiki.ops4j.org/display/ops4j/Pax+Web+-+Jsp
>>
>> to support jsp otherwise it does not work.
>>
>> Questions :
>>
>> 1) What is the strategy of SMX team regarding to J2EE (I mean Servlet/JSP
>> container, Connection Pooling, JPA, JTA, EJB3, ...) ? Is it something
>> strategic for you (like Spring DM or glassfish-v3 have done) ? Will SMX4
>> be
>> build top of PAX 'swissbox' to provide J2EE support ?
> 
> I think this would be a good idea to add suppot for more J2EE stuff,
> but imho, ServiceMix does not aim at being a full J2EE container.
> pax-swissbox has nothing to do with J2EE afaik, it's just a collection
> of utility classes for osgi.
>   * servlet/jsp : pax-web should handle that already
>   * jta: already integrated
>   * ejb3: it has always been on my todo list to integrate openejb in
> smx4, just haven't found the time to finish that
>   * jpa: never tested that
>   * connection pooling: the geronimo jca connector can already be
> integrated into smx4 using jencks
> 
>> 2) Can I replace the existing PAX Web osgi bundles by new one (0.5.x) and
>> add the Pax Web JSP in order to run application needing JSP support ?
> 
> Sure, and that should be part of the full smx4 distribution imho, so
> feel free to raise a jira and attach a patch for that.
>>
>> Regards,
>>
>>
>> gnodet wrote:
>>>
>>> Yes, this is doable.  You need to deploy the "web" feature from
>>> https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/assembly/src/main/filtered-resources/features.xml
>>> and you should be able to deploy wars in the deploy folder or from the
>>> command line.
>>> Alternatively, you could also deploy the spring bundles needed for war
>>> support I suppose.
>>>
>>> On Wed, Feb 11, 2009 at 14:35, cmoulliard <cm...@gmail.com> wrote:
>>>>
>>>> Thanks Gert.
>>>>
>>>> I have found the project mentioned in svn (according to your url). I
>>>> launch
>>>> mvn command and will see the result.
>>>>
>>>> Question : Is it possible with servicemix4 to deploy war project (I
>>>> mean
>>>> a
>>>> war where we have dependencies with OSGI bundles) in tomcat/jetty like
>>>> this
>>>> is possible in Spring DM Server ?
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>>
>>>> Gert Vanthienen wrote:
>>>>>
>>>>> Charles,
>>>>>
>>>>> No, we don't use pax-runner for this.  This is being generated by a
>>>>> Maven plugin created specifically for the ServiceMix Kernel project.
>>>>> The plugin knows about ServiceMix Kernel and it will only add bundles
>>>>> that are required to get thing running on Kernel.  The plugin is
>>>>> designed to look at the OSGi imports and tries to find the bundles to
>>>>> satisfy the required imports by looking at the pom dependencies and a
>>>>> list of bundles (src/main/resources/bundles.properties in the project
>>>>> I
>>>>> mentioned).
>>>>>
>>>>> The public URL for the same repo location is
>>>>> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.
>>>>> Just let me know if you have any problems setting things up.  The
>>>>> remaining issue I mentioned is about the order of the bundles in the
>>>>> feature descriptor, so I'll fix that tomorrow morning but at least the
>>>>> plugin should give you a list of suitable bundles so you can always
>>>>> install the ones that are out of order using osgi/install until this
>>>>> is
>>>>> fixed.
>>>>>
>>>>> Regards,
>>>>>
>>>>> Gert
>>>>>
>>>>>
>>>>> cmoulliard wrote:
>>>>>> Many thanks Gert. You save me because I was bory with bnd and
>>>>>> pax-construct
>>>>>> to add dependencie.
>>>>>>
>>>>>> Question : Is it pax-runner which is used behind features or another
>>>>>> tool
>>>>>> ?
>>>>>>
>>>>>> Another problem is that this is being generated for the latest
>>>>>> released
>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>>> because you need some of the fixes that went in that version, right?
>>>>>>
>>>>>> Answer : Yes
>>>>>>
>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>>>>>
>>>>>> I don't have access to this part of the web site which is password
>>>>>> protected
>>>>>> for ASF commiter.
>>>>>>
>>>>>> Have you the link for anonymous access ?
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Charles
>>>>>>
>>>>>>
>>>>>>
>>>>>> Gert Vanthienen wrote:
>>>>>>
>>>>>>> Charles,
>>>>>>>
>>>>>>> For ServiceMix Kernel, we have a features.xml available for
>>>>>>> installing
>>>>>>> camel components.  The latest snapshot is available at
>>>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>>>> This descriptor is being generated based on the OSGi manifest
>>>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>>>> broken.
>>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>>>
>>>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>>>> console:
>>>>>>> - features/addUrl
>>>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>>>> - features/install camel-cxf
>>>>>>>
>>>>>>> Another problem is that this is being generated for the latest
>>>>>>> released
>>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>>>> because you need some of the fixes that went in that version, right?
>>>>>>> The project definition that is being used to generate the features
>>>>>>> descriptor can be found at
>>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>>>> descriptor.
>>>>>>>
>>>>>>> In the long run, we should figure out a way to get this thing
>>>>>>> generated
>>>>>>> for every version of Camel.  I wonder if it would be an option to
>>>>>>> move
>>>>>>> the generation process into the Camel project.  Not sure the
>>>>>>> drawbacks
>>>>>>> outweigh the gains on that one...
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Gert
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> cmoulliard wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>>>> librairies/bundles for a project ?
>>>>>>>>
>>>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>>>
>>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>>>> create
>>>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>>>> archetype
>>>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>>>
>>>>>>>> my.company.osgi.camel.cxf
>>>>>>>>
>>>>>>>> Let's says that this osgi bundle depends on :
>>>>>>>>
>>>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>>>
>>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team),
>>>>>>>> so
>>>>>>>> I
>>>>>>>> can
>>>>>>>> install them easily in SMX Kernel 1.x
>>>>>>>>
>>>>>>>> But these dependencies depends on additional jars which are
>>>>>>>> potentially
>>>>>>>> not
>>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>>>
>>>>>>>> Questions :
>>>>>>>>
>>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>>>> without
>>>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>>>> unresolved ?
>>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by
>>>>>>>> example
>>>>>>>> the
>>>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>>>> maven-felix-plugin
>>>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>>>> in
>>>>>>>> my
>>>>>>>> osgi bundle or wrapped separetely
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Charles
>>>>>>>>
>>>>>>>> -----
>>>>>>>> Charles Moulliard
>>>>>>>> SOA Architect
>>>>>>>>
>>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>>>> http://cmoulliard.blogspot.com/
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> -----
>>>>>>> ---
>>>>>>> Gert Vanthienen
>>>>>>> http://gertvanthienen.blogspot.com
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> -----
>>>>>> Charles Moulliard
>>>>>> SOA Architect
>>>>>>
>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>> http://cmoulliard.blogspot.com/
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> ---
>>>>> Gert Vanthienen
>>>>> http://gertvanthienen.blogspot.com
>>>>>
>>>>
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Cheers,
>>> Guillaume Nodet
>>> ------------------------
>>> Blog: http://gnodet.blogspot.com/
>>> ------------------------
>>> Open Source SOA
>>> http://fusesource.com
>>>
>>>
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/
>> --
>> View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21992196.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
> 
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21992768.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Guillaume Nodet <gn...@gmail.com>.
2009/2/13 cmoulliard <cm...@gmail.com>:
>
> I see that the command :
>
> install web,
> install web-core
>
> are not enough
>
> We need additional OSGI bundles like :
>
> http://wiki.ops4j.org/display/ops4j/Pax+Web+-+Jsp
>
> to support jsp otherwise it does not work.
>
> Questions :
>
> 1) What is the strategy of SMX team regarding to J2EE (I mean Servlet/JSP
> container, Connection Pooling, JPA, JTA, EJB3, ...) ? Is it something
> strategic for you (like Spring DM or glassfish-v3 have done) ? Will SMX4 be
> build top of PAX 'swissbox' to provide J2EE support ?

I think this would be a good idea to add suppot for more J2EE stuff,
but imho, ServiceMix does not aim at being a full J2EE container.
pax-swissbox has nothing to do with J2EE afaik, it's just a collection
of utility classes for osgi.
  * servlet/jsp : pax-web should handle that already
  * jta: already integrated
  * ejb3: it has always been on my todo list to integrate openejb in
smx4, just haven't found the time to finish that
  * jpa: never tested that
  * connection pooling: the geronimo jca connector can already be
integrated into smx4 using jencks

> 2) Can I replace the existing PAX Web osgi bundles by new one (0.5.x) and
> add the Pax Web JSP in order to run application needing JSP support ?

Sure, and that should be part of the full smx4 distribution imho, so
feel free to raise a jira and attach a patch for that.
>
> Regards,
>
>
> gnodet wrote:
>>
>> Yes, this is doable.  You need to deploy the "web" feature from
>> https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/assembly/src/main/filtered-resources/features.xml
>> and you should be able to deploy wars in the deploy folder or from the
>> command line.
>> Alternatively, you could also deploy the spring bundles needed for war
>> support I suppose.
>>
>> On Wed, Feb 11, 2009 at 14:35, cmoulliard <cm...@gmail.com> wrote:
>>>
>>> Thanks Gert.
>>>
>>> I have found the project mentioned in svn (according to your url). I
>>> launch
>>> mvn command and will see the result.
>>>
>>> Question : Is it possible with servicemix4 to deploy war project (I mean
>>> a
>>> war where we have dependencies with OSGI bundles) in tomcat/jetty like
>>> this
>>> is possible in Spring DM Server ?
>>>
>>> Regards,
>>>
>>> Charles
>>>
>>>
>>> Gert Vanthienen wrote:
>>>>
>>>> Charles,
>>>>
>>>> No, we don't use pax-runner for this.  This is being generated by a
>>>> Maven plugin created specifically for the ServiceMix Kernel project.
>>>> The plugin knows about ServiceMix Kernel and it will only add bundles
>>>> that are required to get thing running on Kernel.  The plugin is
>>>> designed to look at the OSGi imports and tries to find the bundles to
>>>> satisfy the required imports by looking at the pom dependencies and a
>>>> list of bundles (src/main/resources/bundles.properties in the project I
>>>> mentioned).
>>>>
>>>> The public URL for the same repo location is
>>>> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.
>>>> Just let me know if you have any problems setting things up.  The
>>>> remaining issue I mentioned is about the order of the bundles in the
>>>> feature descriptor, so I'll fix that tomorrow morning but at least the
>>>> plugin should give you a list of suitable bundles so you can always
>>>> install the ones that are out of order using osgi/install until this is
>>>> fixed.
>>>>
>>>> Regards,
>>>>
>>>> Gert
>>>>
>>>>
>>>> cmoulliard wrote:
>>>>> Many thanks Gert. You save me because I was bory with bnd and
>>>>> pax-construct
>>>>> to add dependencie.
>>>>>
>>>>> Question : Is it pax-runner which is used behind features or another
>>>>> tool
>>>>> ?
>>>>>
>>>>> Another problem is that this is being generated for the latest released
>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>> because you need some of the fixes that went in that version, right?
>>>>>
>>>>> Answer : Yes
>>>>>
>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>>>>
>>>>> I don't have access to this part of the web site which is password
>>>>> protected
>>>>> for ASF commiter.
>>>>>
>>>>> Have you the link for anonymous access ?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Charles
>>>>>
>>>>>
>>>>>
>>>>> Gert Vanthienen wrote:
>>>>>
>>>>>> Charles,
>>>>>>
>>>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>>>> camel components.  The latest snapshot is available at
>>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>>> This descriptor is being generated based on the OSGi manifest
>>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>>> broken.
>>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>>
>>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>>> console:
>>>>>> - features/addUrl
>>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>>> - features/install camel-cxf
>>>>>>
>>>>>> Another problem is that this is being generated for the latest
>>>>>> released
>>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>>> because you need some of the fixes that went in that version, right?
>>>>>> The project definition that is being used to generate the features
>>>>>> descriptor can be found at
>>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>>> descriptor.
>>>>>>
>>>>>> In the long run, we should figure out a way to get this thing
>>>>>> generated
>>>>>> for every version of Camel.  I wonder if it would be an option to move
>>>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>>>> outweigh the gains on that one...
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Gert
>>>>>>
>>>>>>
>>>>>>
>>>>>> cmoulliard wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>>> librairies/bundles for a project ?
>>>>>>>
>>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>>
>>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>>> create
>>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>>> archetype
>>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>>
>>>>>>> my.company.osgi.camel.cxf
>>>>>>>
>>>>>>> Let's says that this osgi bundle depends on :
>>>>>>>
>>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>>
>>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so
>>>>>>> I
>>>>>>> can
>>>>>>> install them easily in SMX Kernel 1.x
>>>>>>>
>>>>>>> But these dependencies depends on additional jars which are
>>>>>>> potentially
>>>>>>> not
>>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>>
>>>>>>> Questions :
>>>>>>>
>>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>>> without
>>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>>> unresolved ?
>>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>>>> the
>>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>>> maven-felix-plugin
>>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>>> in
>>>>>>> my
>>>>>>> osgi bundle or wrapped separetely
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Charles
>>>>>>>
>>>>>>> -----
>>>>>>> Charles Moulliard
>>>>>>> SOA Architect
>>>>>>>
>>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>>> http://cmoulliard.blogspot.com/
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> -----
>>>>>> ---
>>>>>> Gert Vanthienen
>>>>>> http://gertvanthienen.blogspot.com
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> Charles Moulliard
>>>>> SOA Architect
>>>>>
>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>> http://cmoulliard.blogspot.com/
>>>>>
>>>>
>>>>
>>>>
>>>> -----
>>>> ---
>>>> Gert Vanthienen
>>>> http://gertvanthienen.blogspot.com
>>>>
>>>
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>> --
>>> View this message in context:
>>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>>
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21992196.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
I see that the command :

install web,
install web-core

are not enough

We need additional OSGI bundles like :

http://wiki.ops4j.org/display/ops4j/Pax+Web+-+Jsp

to support jsp otherwise it does not work.

Questions : 

1) What is the strategy of SMX team regarding to J2EE (I mean Servlet/JSP
container, Connection Pooling, JPA, JTA, EJB3, ...) ? Is it something
strategic for you (like Spring DM or glassfish-v3 have done) ? Will SMX4 be
build top of PAX 'swissbox' to provide J2EE support ?
 
2) Can I replace the existing PAX Web osgi bundles by new one (0.5.x) and
add the Pax Web JSP in order to run application needing JSP support ?

Regards,


gnodet wrote:
> 
> Yes, this is doable.  You need to deploy the "web" feature from
> https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/assembly/src/main/filtered-resources/features.xml
> and you should be able to deploy wars in the deploy folder or from the
> command line.
> Alternatively, you could also deploy the spring bundles needed for war
> support I suppose.
> 
> On Wed, Feb 11, 2009 at 14:35, cmoulliard <cm...@gmail.com> wrote:
>>
>> Thanks Gert.
>>
>> I have found the project mentioned in svn (according to your url). I
>> launch
>> mvn command and will see the result.
>>
>> Question : Is it possible with servicemix4 to deploy war project (I mean
>> a
>> war where we have dependencies with OSGI bundles) in tomcat/jetty like
>> this
>> is possible in Spring DM Server ?
>>
>> Regards,
>>
>> Charles
>>
>>
>> Gert Vanthienen wrote:
>>>
>>> Charles,
>>>
>>> No, we don't use pax-runner for this.  This is being generated by a
>>> Maven plugin created specifically for the ServiceMix Kernel project.
>>> The plugin knows about ServiceMix Kernel and it will only add bundles
>>> that are required to get thing running on Kernel.  The plugin is
>>> designed to look at the OSGi imports and tries to find the bundles to
>>> satisfy the required imports by looking at the pom dependencies and a
>>> list of bundles (src/main/resources/bundles.properties in the project I
>>> mentioned).
>>>
>>> The public URL for the same repo location is
>>> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.
>>> Just let me know if you have any problems setting things up.  The
>>> remaining issue I mentioned is about the order of the bundles in the
>>> feature descriptor, so I'll fix that tomorrow morning but at least the
>>> plugin should give you a list of suitable bundles so you can always
>>> install the ones that are out of order using osgi/install until this is
>>> fixed.
>>>
>>> Regards,
>>>
>>> Gert
>>>
>>>
>>> cmoulliard wrote:
>>>> Many thanks Gert. You save me because I was bory with bnd and
>>>> pax-construct
>>>> to add dependencie.
>>>>
>>>> Question : Is it pax-runner which is used behind features or another
>>>> tool
>>>> ?
>>>>
>>>> Another problem is that this is being generated for the latest released
>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>> because you need some of the fixes that went in that version, right?
>>>>
>>>> Answer : Yes
>>>>
>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>>>
>>>> I don't have access to this part of the web site which is password
>>>> protected
>>>> for ASF commiter.
>>>>
>>>> Have you the link for anonymous access ?
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>>
>>>>
>>>> Gert Vanthienen wrote:
>>>>
>>>>> Charles,
>>>>>
>>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>>> camel components.  The latest snapshot is available at
>>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>>> This descriptor is being generated based on the OSGi manifest
>>>>> information.  If a JAR is already a bundle, we just include in the
>>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>>> instead. Unfortunately it also look like the latest snapshot is
>>>>> broken.
>>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>>
>>>>> In order to use it, issue these two commands from the ServiceMix
>>>>> console:
>>>>> - features/addUrl
>>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>>> - features/install camel-cxf
>>>>>
>>>>> Another problem is that this is being generated for the latest
>>>>> released
>>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>>> because you need some of the fixes that went in that version, right?
>>>>> The project definition that is being used to generate the features
>>>>> descriptor can be found at
>>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>>> descriptor.
>>>>>
>>>>> In the long run, we should figure out a way to get this thing
>>>>> generated
>>>>> for every version of Camel.  I wonder if it would be an option to move
>>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>>> outweigh the gains on that one...
>>>>>
>>>>> Regards,
>>>>>
>>>>> Gert
>>>>>
>>>>>
>>>>>
>>>>> cmoulliard wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>>> librairies/bundles for a project ?
>>>>>>
>>>>>> First of all, let's start with a example : camel + cxf
>>>>>>
>>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>>> create
>>>>>> an osgi project for my code. This project can be created using mvn
>>>>>> archetype
>>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>>
>>>>>> my.company.osgi.camel.cxf
>>>>>>
>>>>>> Let's says that this osgi bundle depends on :
>>>>>>
>>>>>> camel-core 2.0-SNAPSHOT,
>>>>>> camel-spring 2.0-SNAPSHOT,
>>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>>
>>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so
>>>>>> I
>>>>>> can
>>>>>> install them easily in SMX Kernel 1.x
>>>>>>
>>>>>> But these dependencies depends on additional jars which are
>>>>>> potentially
>>>>>> not
>>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>>
>>>>>> Questions :
>>>>>>
>>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>>> without
>>>>>> deploying, looking in the log and discovering that dependencies are
>>>>>> unresolved ?
>>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>>> the
>>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>>> maven-felix-plugin
>>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded
>>>>>> in
>>>>>> my
>>>>>> osgi bundle or wrapped separetely
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Charles
>>>>>>
>>>>>> -----
>>>>>> Charles Moulliard
>>>>>> SOA Architect
>>>>>>
>>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>>> http://cmoulliard.blogspot.com/
>>>>>>
>>>>>>
>>>>>
>>>>> -----
>>>>> ---
>>>>> Gert Vanthienen
>>>>> http://gertvanthienen.blogspot.com
>>>>>
>>>>>
>>>>
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/
>>>>
>>>
>>>
>>>
>>> -----
>>> ---
>>> Gert Vanthienen
>>> http://gertvanthienen.blogspot.com
>>>
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/
>> --
>> View this message in context:
>> http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
> 
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21992196.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Guillaume Nodet <gn...@gmail.com>.
Yes, this is doable.  You need to deploy the "web" feature from
https://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/assembly/src/main/filtered-resources/features.xml
and you should be able to deploy wars in the deploy folder or from the
command line.
Alternatively, you could also deploy the spring bundles needed for war
support I suppose.

On Wed, Feb 11, 2009 at 14:35, cmoulliard <cm...@gmail.com> wrote:
>
> Thanks Gert.
>
> I have found the project mentioned in svn (according to your url). I launch
> mvn command and will see the result.
>
> Question : Is it possible with servicemix4 to deploy war project (I mean a
> war where we have dependencies with OSGI bundles) in tomcat/jetty like this
> is possible in Spring DM Server ?
>
> Regards,
>
> Charles
>
>
> Gert Vanthienen wrote:
>>
>> Charles,
>>
>> No, we don't use pax-runner for this.  This is being generated by a
>> Maven plugin created specifically for the ServiceMix Kernel project.
>> The plugin knows about ServiceMix Kernel and it will only add bundles
>> that are required to get thing running on Kernel.  The plugin is
>> designed to look at the OSGi imports and tries to find the bundles to
>> satisfy the required imports by looking at the pom dependencies and a
>> list of bundles (src/main/resources/bundles.properties in the project I
>> mentioned).
>>
>> The public URL for the same repo location is
>> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.
>> Just let me know if you have any problems setting things up.  The
>> remaining issue I mentioned is about the order of the bundles in the
>> feature descriptor, so I'll fix that tomorrow morning but at least the
>> plugin should give you a list of suitable bundles so you can always
>> install the ones that are out of order using osgi/install until this is
>> fixed.
>>
>> Regards,
>>
>> Gert
>>
>>
>> cmoulliard wrote:
>>> Many thanks Gert. You save me because I was bory with bnd and
>>> pax-construct
>>> to add dependencie.
>>>
>>> Question : Is it pax-runner which is used behind features or another tool
>>> ?
>>>
>>> Another problem is that this is being generated for the latest released
>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>> because you need some of the fixes that went in that version, right?
>>>
>>> Answer : Yes
>>>
>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>>
>>> I don't have access to this part of the web site which is password
>>> protected
>>> for ASF commiter.
>>>
>>> Have you the link for anonymous access ?
>>>
>>> Regards,
>>>
>>> Charles
>>>
>>>
>>>
>>> Gert Vanthienen wrote:
>>>
>>>> Charles,
>>>>
>>>> For ServiceMix Kernel, we have a features.xml available for installing
>>>> camel components.  The latest snapshot is available at
>>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>>> This descriptor is being generated based on the OSGi manifest
>>>> information.  If a JAR is already a bundle, we just include in the
>>>> feature.  For other JARs, we built a ServiceMix bundle and use that
>>>> instead. Unfortunately it also look like the latest snapshot is broken.
>>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>>
>>>> In order to use it, issue these two commands from the ServiceMix
>>>> console:
>>>> - features/addUrl
>>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>>> - features/install camel-cxf
>>>>
>>>> Another problem is that this is being generated for the latest released
>>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT
>>>> because you need some of the fixes that went in that version, right?
>>>> The project definition that is being used to generate the features
>>>> descriptor can be found at
>>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/,
>>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT
>>>> descriptor.
>>>>
>>>> In the long run, we should figure out a way to get this thing generated
>>>> for every version of Camel.  I wonder if it would be an option to move
>>>> the generation process into the Camel project.  Not sure the drawbacks
>>>> outweigh the gains on that one...
>>>>
>>>> Regards,
>>>>
>>>> Gert
>>>>
>>>>
>>>>
>>>> cmoulliard wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I would like to know what is the best/quickest way to design OSGI
>>>>> librairies/bundles for a project ?
>>>>>
>>>>> First of all, let's start with a example : camel + cxf
>>>>>
>>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>>> create
>>>>> an osgi project for my code. This project can be created using mvn
>>>>> archetype
>>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>>
>>>>> my.company.osgi.camel.cxf
>>>>>
>>>>> Let's says that this osgi bundle depends on :
>>>>>
>>>>> camel-core 2.0-SNAPSHOT,
>>>>> camel-spring 2.0-SNAPSHOT,
>>>>> camel-cxf 2.0-SNAPSHOT
>>>>>
>>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>>> can
>>>>> install them easily in SMX Kernel 1.x
>>>>>
>>>>> But these dependencies depends on additional jars which are potentially
>>>>> not
>>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...).
>>>>>
>>>>> Questions :
>>>>>
>>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>>> without
>>>>> deploying, looking in the log and discovering that dependencies are
>>>>> unresolved ?
>>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>>> the
>>>>> option 'embed-transitive' of bnd tools (which is used by
>>>>> maven-felix-plugin
>>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>>> my
>>>>> osgi bundle or wrapped separetely
>>>>>
>>>>> Regards,
>>>>>
>>>>> Charles
>>>>>
>>>>> -----
>>>>> Charles Moulliard
>>>>> SOA Architect
>>>>>
>>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>>> http://cmoulliard.blogspot.com/
>>>>>
>>>>>
>>>>
>>>> -----
>>>> ---
>>>> Gert Vanthienen
>>>> http://gertvanthienen.blogspot.com
>>>>
>>>>
>>>
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/
>>>
>>
>>
>>
>> -----
>> ---
>> Gert Vanthienen
>> http://gertvanthienen.blogspot.com
>>
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/
> --
> View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Thanks Gert.

I have found the project mentioned in svn (according to your url). I launch
mvn command and will see the result.

Question : Is it possible with servicemix4 to deploy war project (I mean a
war where we have dependencies with OSGI bundles) in tomcat/jetty like this
is possible in Spring DM Server ?

Regards,

Charles


Gert Vanthienen wrote:
> 
> Charles,
> 
> No, we don't use pax-runner for this.  This is being generated by a 
> Maven plugin created specifically for the ServiceMix Kernel project.  
> The plugin knows about ServiceMix Kernel and it will only add bundles 
> that are required to get thing running on Kernel.  The plugin is 
> designed to look at the OSGi imports and tries to find the bundles to 
> satisfy the required imports by looking at the pom dependencies and a 
> list of bundles (src/main/resources/bundles.properties in the project I 
> mentioned).
> 
> The public URL for the same repo location is 
> http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.  
> Just let me know if you have any problems setting things up.  The 
> remaining issue I mentioned is about the order of the bundles in the 
> feature descriptor, so I'll fix that tomorrow morning but at least the 
> plugin should give you a list of suitable bundles so you can always 
> install the ones that are out of order using osgi/install until this is 
> fixed.
> 
> Regards,
> 
> Gert
> 
> 
> cmoulliard wrote:
>> Many thanks Gert. You save me because I was bory with bnd and
>> pax-construct
>> to add dependencie.
>>
>> Question : Is it pax-runner which is used behind features or another tool
>> ?
>>
>> Another problem is that this is being generated for the latest released 
>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
>> because you need some of the fixes that went in that version, right? 
>>
>> Answer : Yes
>>
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>>
>> I don't have access to this part of the web site which is password
>> protected
>> for ASF commiter.
>>
>> Have you the link for anonymous access ?
>>
>> Regards,
>>
>> Charles
>>
>>
>>
>> Gert Vanthienen wrote:
>>   
>>> Charles,
>>>
>>> For ServiceMix Kernel, we have a features.xml available for installing 
>>> camel components.  The latest snapshot is available at 
>>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>>> This descriptor is being generated based on the OSGi manifest 
>>> information.  If a JAR is already a bundle, we just include in the 
>>> feature.  For other JARs, we built a ServiceMix bundle and use that 
>>> instead. Unfortunately it also look like the latest snapshot is broken.  
>>> I'll try to fix that tomorrow morning so you can give it a try.
>>>
>>> In order to use it, issue these two commands from the ServiceMix
>>> console:
>>> - features/addUrl 
>>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>>> - features/install camel-cxf
>>>
>>> Another problem is that this is being generated for the latest released 
>>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
>>> because you need some of the fixes that went in that version, right?  
>>> The project definition that is being used to generate the features 
>>> descriptor can be found at 
>>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
>>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
>>> descriptor. 
>>>
>>> In the long run, we should figure out a way to get this thing generated 
>>> for every version of Camel.  I wonder if it would be an option to move 
>>> the generation process into the Camel project.  Not sure the drawbacks 
>>> outweigh the gains on that one...
>>>
>>> Regards,
>>>
>>> Gert
>>>
>>>
>>>
>>> cmoulliard wrote:
>>>     
>>>> Hi,
>>>>
>>>> I would like to know what is the best/quickest way to design OSGI
>>>> librairies/bundles for a project ?
>>>>
>>>> First of all, let's start with a example : camel + cxf
>>>>
>>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>>> create
>>>> an osgi project for my code. This project can be created using mvn
>>>> archetype
>>>> (maven-felix-plugin), bnd or pax-contruct
>>>>
>>>> my.company.osgi.camel.cxf
>>>>
>>>> Let's says that this osgi bundle depends on :
>>>>
>>>> camel-core 2.0-SNAPSHOT,
>>>> camel-spring 2.0-SNAPSHOT,
>>>> camel-cxf 2.0-SNAPSHOT
>>>>
>>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>>> can
>>>> install them easily in SMX Kernel 1.x
>>>>
>>>> But these dependencies depends on additional jars which are potentially
>>>> not
>>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>>>>
>>>> Questions :
>>>>
>>>> - How can I easily/quickly detect which jars are not 'osgi'fied'
>>>> without
>>>> deploying, looking in the log and discovering that dependencies are
>>>> unresolved ?
>>>> - What is the best strategy to OSGIfied them ? I mean 'use by example
>>>> the
>>>> option 'embed-transitive' of bnd tools (which is used by
>>>> maven-felix-plugin
>>>> or pax-constrcut)'. But the risk is that too much jars are embedded in
>>>> my
>>>> osgi bundle or wrapped separetely 
>>>>
>>>> Regards,
>>>>
>>>> Charles
>>>>
>>>> -----
>>>> Charles Moulliard
>>>> SOA Architect
>>>>
>>>> My Blog :  http://cmoulliard.blogspot.com/
>>>> http://cmoulliard.blogspot.com/  
>>>>   
>>>>       
>>>
>>> -----
>>> ---
>>> Gert Vanthienen
>>> http://gertvanthienen.blogspot.com
>>>
>>>     
>>
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/  
>>   
> 
> 
> 
> -----
> ---
> Gert Vanthienen
> http://gertvanthienen.blogspot.com
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954809.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@skynet.be>.
Charles,

No, we don't use pax-runner for this.  This is being generated by a 
Maven plugin created specifically for the ServiceMix Kernel project.  
The plugin knows about ServiceMix Kernel and it will only add bundles 
that are required to get thing running on Kernel.  The plugin is 
designed to look at the OSGi imports and tries to find the bundles to 
satisfy the required imports by looking at the pom dependencies and a 
list of bundles (src/main/resources/bundles.properties in the project I 
mentioned).

The public URL for the same repo location is 
http://svn.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/.  
Just let me know if you have any problems setting things up.  The 
remaining issue I mentioned is about the order of the bundles in the 
feature descriptor, so I'll fix that tomorrow morning but at least the 
plugin should give you a list of suitable bundles so you can always 
install the ones that are out of order using osgi/install until this is 
fixed.

Regards,

Gert


cmoulliard wrote:
> Many thanks Gert. You save me because I was bory with bnd and pax-construct
> to add dependencie.
>
> Question : Is it pax-runner which is used behind features or another tool ?
>
> Another problem is that this is being generated for the latest released 
> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
> because you need some of the fixes that went in that version, right? 
>
> Answer : Yes
>
> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/
>
> I don't have access to this part of the web site which is password protected
> for ASF commiter.
>
> Have you the link for anonymous access ?
>
> Regards,
>
> Charles
>
>
>
> Gert Vanthienen wrote:
>   
>> Charles,
>>
>> For ServiceMix Kernel, we have a features.xml available for installing 
>> camel components.  The latest snapshot is available at 
>> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
>> This descriptor is being generated based on the OSGi manifest 
>> information.  If a JAR is already a bundle, we just include in the 
>> feature.  For other JARs, we built a ServiceMix bundle and use that 
>> instead. Unfortunately it also look like the latest snapshot is broken.  
>> I'll try to fix that tomorrow morning so you can give it a try.
>>
>> In order to use it, issue these two commands from the ServiceMix console:
>> - features/addUrl 
>> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
>> - features/install camel-cxf
>>
>> Another problem is that this is being generated for the latest released 
>> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
>> because you need some of the fixes that went in that version, right?  
>> The project definition that is being used to generate the features 
>> descriptor can be found at 
>> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
>> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
>> descriptor. 
>>
>> In the long run, we should figure out a way to get this thing generated 
>> for every version of Camel.  I wonder if it would be an option to move 
>> the generation process into the Camel project.  Not sure the drawbacks 
>> outweigh the gains on that one...
>>
>> Regards,
>>
>> Gert
>>
>>
>>
>> cmoulliard wrote:
>>     
>>> Hi,
>>>
>>> I would like to know what is the best/quickest way to design OSGI
>>> librairies/bundles for a project ?
>>>
>>> First of all, let's start with a example : camel + cxf
>>>
>>> To deploy such a project top of SMX kernel 1.x, I need of course to
>>> create
>>> an osgi project for my code. This project can be created using mvn
>>> archetype
>>> (maven-felix-plugin), bnd or pax-contruct
>>>
>>> my.company.osgi.camel.cxf
>>>
>>> Let's says that this osgi bundle depends on :
>>>
>>> camel-core 2.0-SNAPSHOT,
>>> camel-spring 2.0-SNAPSHOT,
>>> camel-cxf 2.0-SNAPSHOT
>>>
>>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>>> can
>>> install them easily in SMX Kernel 1.x
>>>
>>> But these dependencies depends on additional jars which are potentially
>>> not
>>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>>>
>>> Questions :
>>>
>>> - How can I easily/quickly detect which jars are not 'osgi'fied' without
>>> deploying, looking in the log and discovering that dependencies are
>>> unresolved ?
>>> - What is the best strategy to OSGIfied them ? I mean 'use by example the
>>> option 'embed-transitive' of bnd tools (which is used by
>>> maven-felix-plugin
>>> or pax-constrcut)'. But the risk is that too much jars are embedded in my
>>> osgi bundle or wrapped separetely 
>>>
>>> Regards,
>>>
>>> Charles
>>>
>>> -----
>>> Charles Moulliard
>>> SOA Architect
>>>
>>> My Blog :  http://cmoulliard.blogspot.com/
>>> http://cmoulliard.blogspot.com/  
>>>   
>>>       
>>
>> -----
>> ---
>> Gert Vanthienen
>> http://gertvanthienen.blogspot.com
>>
>>     
>
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
>   


Re: SMX4 Kernel & OSGI librairies strategy

Posted by cmoulliard <cm...@gmail.com>.
Many thanks Gert. You save me because I was bory with bnd and pax-construct
to add dependencie.

Question : Is it pax-runner which is used behind features or another tool ?

Another problem is that this is being generated for the latest released 
version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
because you need some of the fixes that went in that version, right? 

Answer : Yes

https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/

I don't have access to this part of the web site which is password protected
for ASF commiter.

Have you the link for anonymous access ?

Regards,

Charles



Gert Vanthienen wrote:
> 
> Charles,
> 
> For ServiceMix Kernel, we have a features.xml available for installing 
> camel components.  The latest snapshot is available at 
> http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
> This descriptor is being generated based on the OSGi manifest 
> information.  If a JAR is already a bundle, we just include in the 
> feature.  For other JARs, we built a ServiceMix bundle and use that 
> instead. Unfortunately it also look like the latest snapshot is broken.  
> I'll try to fix that tomorrow morning so you can give it a try.
> 
> In order to use it, issue these two commands from the ServiceMix console:
> - features/addUrl 
> mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
> - features/install camel-cxf
> 
> Another problem is that this is being generated for the latest released 
> version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
> because you need some of the fixes that went in that version, right?  
> The project definition that is being used to generate the features 
> descriptor can be found at 
> https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
> so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
> descriptor. 
> 
> In the long run, we should figure out a way to get this thing generated 
> for every version of Camel.  I wonder if it would be an option to move 
> the generation process into the Camel project.  Not sure the drawbacks 
> outweigh the gains on that one...
> 
> Regards,
> 
> Gert
> 
> 
> 
> cmoulliard wrote:
>> Hi,
>>
>> I would like to know what is the best/quickest way to design OSGI
>> librairies/bundles for a project ?
>>
>> First of all, let's start with a example : camel + cxf
>>
>> To deploy such a project top of SMX kernel 1.x, I need of course to
>> create
>> an osgi project for my code. This project can be created using mvn
>> archetype
>> (maven-felix-plugin), bnd or pax-contruct
>>
>> my.company.osgi.camel.cxf
>>
>> Let's says that this osgi bundle depends on :
>>
>> camel-core 2.0-SNAPSHOT,
>> camel-spring 2.0-SNAPSHOT,
>> camel-cxf 2.0-SNAPSHOT
>>
>> Those dependencies already exist as OSGI bundles (ths Camel team), so I
>> can
>> install them easily in SMX Kernel 1.x
>>
>> But these dependencies depends on additional jars which are potentially
>> not
>> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>>
>> Questions :
>>
>> - How can I easily/quickly detect which jars are not 'osgi'fied' without
>> deploying, looking in the log and discovering that dependencies are
>> unresolved ?
>> - What is the best strategy to OSGIfied them ? I mean 'use by example the
>> option 'embed-transitive' of bnd tools (which is used by
>> maven-felix-plugin
>> or pax-constrcut)'. But the risk is that too much jars are embedded in my
>> osgi bundle or wrapped separetely 
>>
>> Regards,
>>
>> Charles
>>
>> -----
>> Charles Moulliard
>> SOA Architect
>>
>> My Blog :  http://cmoulliard.blogspot.com/
>> http://cmoulliard.blogspot.com/  
>>   
> 
> 
> 
> -----
> ---
> Gert Vanthienen
> http://gertvanthienen.blogspot.com
> 


-----
Charles Moulliard
SOA Architect

My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
-- 
View this message in context: http://www.nabble.com/SMX4-Kernel---OSGI-librairies-strategy-tp21951410p21954197.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: SMX4 Kernel & OSGI librairies strategy

Posted by Gert Vanthienen <ge...@skynet.be>.
Charles,

For ServiceMix Kernel, we have a features.xml available for installing 
camel components.  The latest snapshot is available at 
http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/camel/org.apache.servicemix.camel.features/4.0-m2-SNAPSHOT/org.apache.servicemix.camel.features-4.0-m2-20090210.115259-22-features.xml
This descriptor is being generated based on the OSGi manifest 
information.  If a JAR is already a bundle, we just include in the 
feature.  For other JARs, we built a ServiceMix bundle and use that 
instead. Unfortunately it also look like the latest snapshot is broken.  
I'll try to fix that tomorrow morning so you can give it a try.

In order to use it, issue these two commands from the ServiceMix console:
- features/addUrl 
mvn:org.apache.servicemix.camel/org;aapche.servicemix.camel.features/4.0-m2-SNAPSHOT/xml/features
- features/install camel-cxf

Another problem is that this is being generated for the latest released 
version of Camel (1.5.0) and you probably need it for 2.0-SNAPSHOT 
because you need some of the fixes that went in that version, right?  
The project definition that is being used to generate the features 
descriptor can be found at 
https://svn.eu.apache.org/repos/asf/servicemix/smx4/features/trunk/camel/camel-features/, 
so perhaps you could try to modify that to generate a 2.0-SNAPSHOT 
descriptor. 

In the long run, we should figure out a way to get this thing generated 
for every version of Camel.  I wonder if it would be an option to move 
the generation process into the Camel project.  Not sure the drawbacks 
outweigh the gains on that one...

Regards,

Gert



cmoulliard wrote:
> Hi,
>
> I would like to know what is the best/quickest way to design OSGI
> librairies/bundles for a project ?
>
> First of all, let's start with a example : camel + cxf
>
> To deploy such a project top of SMX kernel 1.x, I need of course to create
> an osgi project for my code. This project can be created using mvn archetype
> (maven-felix-plugin), bnd or pax-contruct
>
> my.company.osgi.camel.cxf
>
> Let's says that this osgi bundle depends on :
>
> camel-core 2.0-SNAPSHOT,
> camel-spring 2.0-SNAPSHOT,
> camel-cxf 2.0-SNAPSHOT
>
> Those dependencies already exist as OSGI bundles (ths Camel team), so I can
> install them easily in SMX Kernel 1.x
>
> But these dependencies depends on additional jars which are potentially not
> at all 'OSGI'fied (like org.apache.cxf 2.2-SNAPSHOT, ...). 
>
> Questions :
>
> - How can I easily/quickly detect which jars are not 'osgi'fied' without
> deploying, looking in the log and discovering that dependencies are
> unresolved ?
> - What is the best strategy to OSGIfied them ? I mean 'use by example the
> option 'embed-transitive' of bnd tools (which is used by maven-felix-plugin
> or pax-constrcut)'. But the risk is that too much jars are embedded in my
> osgi bundle or wrapped separetely 
>
> Regards,
>
> Charles
>
> -----
> Charles Moulliard
> SOA Architect
>
> My Blog :  http://cmoulliard.blogspot.com/ http://cmoulliard.blogspot.com/  
>