You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by baleado <jo...@gmail.com> on 2012/02/23 17:40:36 UTC

Doubt about ServiceMix architecture

Hi,

I have read a lot of content about this matter but still  I'm a little bit
confused about how the ServiceMix works. 

My main question is to understand when to use OSGi Bundles and when to use
JBI Components.

For example there is any difference deploying a Camel Route as a OSGi Bundle
or as JBI Components? if I deploy a Camel route as a OSGi Bundle the
communication beetween components is made using NMR?




--
View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508586.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Re: Doubt about ServiceMix architecture

Posted by Claus Ibsen <cl...@gmail.com>.
Hi

JBI is becoming legacy / dead. For new projects do not start using it.

Some details on this blog from the main architect of SMX:
http://gnodet.blogspot.com/2010/12/thoughts-about-servicemix.html


On Thu, Feb 23, 2012 at 5:40 PM, baleado <jo...@gmail.com> wrote:
> Hi,
>
> I have read a lot of content about this matter but still  I'm a little bit
> confused about how the ServiceMix works.
>
> My main question is to understand when to use OSGi Bundles and when to use
> JBI Components.
>
> For example there is any difference deploying a Camel Route as a OSGi Bundle
> or as JBI Components? if I deploy a Camel route as a OSGi Bundle the
> communication beetween components is made using NMR?
>
>
>
>
> --
> View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508586.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
FuseSource
Email: cibsen@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Re: Doubt about ServiceMix architecture

Posted by Maciek Próchniak <mp...@touk.pl>.
Hi,

I am a bit confused now. I was thinking (based e.g. on following threads:
http://servicemix.396122.n5.nabble.com/DISCUSS-ServiceMix-future-td3212177i40.html
http://camel.465427.n5.nabble.com/Best-practices-to-communicate-between-Camel-Contexts-in-different-OSGi-bundles-td4832706.html 
- this one is only few months old)
that current 'best pratice' is not to use JBI anymore, but have OSGi 
bundles with camel contexts, communicating through NMR.

But if NMR is no longer in 'default' distribution, what is the 
'recommended' way to handle common situation:
- one bundle with adapter to system A invoking webservice,
- two bundles with client webservice interfaces for systems B, C which 
need to invoke A.
Now we would handle it by having camel contexts in each bundle, 
communicating via NMR, but if NMR is to be deprecated, I'm not quite 
sure how should I do it?

I'm starting to think that one has to be SMX committer to use it 
correctly :P - we have SMX deployments for a few clients starting with 
3.3, and ending with 4.3, and with each one we have to use SMX in a bit 
different way to solve common scenarios - which starts to be maintenance 
problem...

br,
maciek


On 02/23/2012 06:44 PM, Gert Vanthienen wrote:
> L.S.,
>
> If you download the default assembly for ServiceMix 4.4.0 or above, you
> will already have this configured that way - those default assemblies no
> longer preload the JBI and NMR bundles any more.
> E.g. have a look at the default download on
> http://servicemix.apache.org/downloads/servicemix-4.4.1.html
>
> Regards,
>
> Gert Vanthienen
> ------------------------
> FuseSource
> Web: http://fusesource.com
> Blog: http://gertvanthienen.blogspot.com/
>
>
> On Thu, Feb 23, 2012 at 6:22 PM, Brian Topping<to...@codehaus.org>  wrote:
>
>> OSGi is considered best practice for new development.  When I set up
>> ServiceMix 4, I remove preload references to JBI and NMR components from
>> <SMX-HOME>/etc/org.apache.karaf.features.cfg so it looks like this:
>>
>> featuresBoot=karaf-framework,config,xml-specs,activemq-broker,activemq-spring,camel,camel-activemq,camel-cxf,camel-blueprint,war
>>
>> OSGi has excellent documentation and is not hard to learn, but you will
>> save a lot of time by understanding it first.
>>
>> On Feb 23, 2012, at 11:40 AM, baleado wrote:
>>
>>> Hi,
>>>
>>> I have read a lot of content about this matter but still  I'm a little
>> bit
>>> confused about how the ServiceMix works.
>>>
>>> My main question is to understand when to use OSGi Bundles and when to
>> use
>>> JBI Components.
>>>
>>> For example there is any difference deploying a Camel Route as a OSGi
>> Bundle
>>> or as JBI Components? if I deploy a Camel route as a OSGi Bundle the
>>> communication beetween components is made using NMR?
>>>
>>>
>>>
>>>
>>> --
>>> View this message in context:
>> http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508586.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>


Re: Doubt about ServiceMix architecture

Posted by Johan Edstrom <je...@savoirtech.com>.
Well, you also loose the following things :)

	* Karaf - The kernel where most of these things are tested.
	* JRE Setup
	* Class exposure of things JVM vs. 3rd Party (Think XML)
	* Class ordering tools
	* KAR
	* OBR
	* MVN integrations
	* JBI
	* File deployment

	* Visibility integrations (karaf commands, webconsole)
	* SSH
	* Partly probably JMX

	* JAAS integrations
	* Integrated Aries / Geronimo testing
	* Encrypted properties
	* LDAP properties
	* Camel Testing
	* CXF Testing
	* ActiveMQ Testing
	* All of the frameworks Camel bring in tests.

	* Tutorials that work
	
Besides that, yes you are 100% correct, nothing to be gained :)

On Feb 25, 2012, at 8:41 PM, Matt Pavlovich wrote:

> Hi Baleado-
> 
> You could try to build all the frameworks together, but one of the advantages of using ServiceMix, is that you are using a build that is being used by hundreds of other people, and all the dependency versions (and transitive dependencies!) are sorted out.  The management pieces including Maven-based deployments, features, ConfigAdmin.. and the list goes on.  ServiceMix represents the next generation of Application Server technologies.
> 
> Also, the OSGi bits shouldn't be overlooked.  There are a lot of advantages to using Blueprint over Spring and not having to use other heavier J2EE technologies.
> 
> Matt Pavlovich
> 
> On 2/23/12 12:16 PM, Baleado wrote:
>> Thank you guys for your quick replies,
>> 
>> To clarify, basically ServiceMix is an OSGi environment (Apache Karaf) that
>> provides a set of apache frameworks like Apache Camel, Apache CXF and Apache
>> ActiveMQ in a unified platform that supports a legacy/dead JBI specification
>> through NMR.
>> 
>> So if I understand the mainly difference in build a integration solution
>> using ServiceMix or using each framework individualy is the OSGi server.
>> 
>> For example if I want to build a integration solution running inside a
>> Aplication Server I can achieve the same result using each Apache framework
>> individualy, losing all the management facilities that OSGi server offers.
>> 
>> I'm right?
>> 
>> --
>> View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508888.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Doubt about ServiceMix architecture

Posted by Matt Pavlovich <ma...@gmail.com>.
Hi Baleado-

You could try to build all the frameworks together, but one of the 
advantages of using ServiceMix, is that you are using a build that is 
being used by hundreds of other people, and all the dependency versions 
(and transitive dependencies!) are sorted out.  The management pieces 
including Maven-based deployments, features, ConfigAdmin.. and the list 
goes on.  ServiceMix represents the next generation of Application 
Server technologies.

Also, the OSGi bits shouldn't be overlooked.  There are a lot of 
advantages to using Blueprint over Spring and not having to use other 
heavier J2EE technologies.

Matt Pavlovich

On 2/23/12 12:16 PM, Baleado wrote:
> Thank you guys for your quick replies,
>
> To clarify, basically ServiceMix is an OSGi environment (Apache Karaf) that
> provides a set of apache frameworks like Apache Camel, Apache CXF and Apache
> ActiveMQ in a unified platform that supports a legacy/dead JBI specification
> through NMR.
>
> So if I understand the mainly difference in build a integration solution
> using ServiceMix or using each framework individualy is the OSGi server.
>
> For example if I want to build a integration solution running inside a
> Aplication Server I can achieve the same result using each Apache framework
> individualy, losing all the management facilities that OSGi server offers.
>
> I'm right?
>
> --
> View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508888.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.

Re: Doubt about ServiceMix architecture

Posted by Baleado <jo...@gmail.com>.
Thank you guys for your quick replies,

To clarify, basically ServiceMix is an OSGi environment (Apache Karaf) that
provides a set of apache frameworks like Apache Camel, Apache CXF and Apache
ActiveMQ in a unified platform that supports a legacy/dead JBI specification
through NMR.

So if I understand the mainly difference in build a integration solution
using ServiceMix or using each framework individualy is the OSGi server. 

For example if I want to build a integration solution running inside a
Aplication Server I can achieve the same result using each Apache framework
individualy, losing all the management facilities that OSGi server offers.

I'm right?

--
View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508888.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Re: Doubt about ServiceMix architecture

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

If you download the default assembly for ServiceMix 4.4.0 or above, you
will already have this configured that way - those default assemblies no
longer preload the JBI and NMR bundles any more.
E.g. have a look at the default download on
http://servicemix.apache.org/downloads/servicemix-4.4.1.html

Regards,

Gert Vanthienen
------------------------
FuseSource
Web: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/


On Thu, Feb 23, 2012 at 6:22 PM, Brian Topping <to...@codehaus.org> wrote:

> OSGi is considered best practice for new development.  When I set up
> ServiceMix 4, I remove preload references to JBI and NMR components from
> <SMX-HOME>/etc/org.apache.karaf.features.cfg so it looks like this:
>
> >
> featuresBoot=karaf-framework,config,xml-specs,activemq-broker,activemq-spring,camel,camel-activemq,camel-cxf,camel-blueprint,war
>
> OSGi has excellent documentation and is not hard to learn, but you will
> save a lot of time by understanding it first.
>
> On Feb 23, 2012, at 11:40 AM, baleado wrote:
>
> > Hi,
> >
> > I have read a lot of content about this matter but still  I'm a little
> bit
> > confused about how the ServiceMix works.
> >
> > My main question is to understand when to use OSGi Bundles and when to
> use
> > JBI Components.
> >
> > For example there is any difference deploying a Camel Route as a OSGi
> Bundle
> > or as JBI Components? if I deploy a Camel route as a OSGi Bundle the
> > communication beetween components is made using NMR?
> >
> >
> >
> >
> > --
> > View this message in context:
> http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508586.html
> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>

Re: Doubt about ServiceMix architecture

Posted by Brian Topping <to...@codehaus.org>.
OSGi is considered best practice for new development.  When I set up ServiceMix 4, I remove preload references to JBI and NMR components from <SMX-HOME>/etc/org.apache.karaf.features.cfg so it looks like this:

> featuresBoot=karaf-framework,config,xml-specs,activemq-broker,activemq-spring,camel,camel-activemq,camel-cxf,camel-blueprint,war

OSGi has excellent documentation and is not hard to learn, but you will save a lot of time by understanding it first.  

On Feb 23, 2012, at 11:40 AM, baleado wrote:

> Hi,
> 
> I have read a lot of content about this matter but still  I'm a little bit
> confused about how the ServiceMix works. 
> 
> My main question is to understand when to use OSGi Bundles and when to use
> JBI Components.
> 
> For example there is any difference deploying a Camel Route as a OSGi Bundle
> or as JBI Components? if I deploy a Camel route as a OSGi Bundle the
> communication beetween components is made using NMR?
> 
> 
> 
> 
> --
> View this message in context: http://servicemix.396122.n5.nabble.com/Doubt-about-ServiceMix-architecture-tp5508586p5508586.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.