You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by kahon <ka...@sohu.com> on 2006/04/19 07:58:37 UTC

some concepts in Servicemix confused me--

   What's the meaning of a Pojo Component? Then non-Pojo Component?
   And the concept Light-Weighter Component verus Standard component?
   At first I think Components which have a Component Impl extends
ComponentSupport is a Pojo component,and the others are non-Pojo Compnents.
But when I see the ComponentMBeanImpl's pojo attribute and the HttpComponent
instance's activation from source code in the Junit TestCase( in the
servicemix-http project),I find the HttpComponent in that Junit test case
seems like a pojo Component,because the HttpComponent's activation calls to 
JBIContainer's method activateComponent(File installationDir, Component
component, String description,
                                        ComponentContextImpl context,
ActivationSpec activationSpec, boolean pojo, boolean binding, boolean
service) with the parameter pojo set true.
    So in this case the HttpComponent is a pojo component? If so,i'm
wondering what's difference of a pojo Component and a non-pojo component?
    
    As the latter confusion,I think the lightweight component has a
ComponentSupport's subclass,and the the others are standard components.
    Is my view right? 
--
View this message in context: http://www.nabble.com/some-concepts-in-Servicemix-confused-me---t1472508.html#a3982036
Sent from the ServiceMix - User forum at Nabble.com.


Re: some concepts in Servicemix confused me--

Posted by Guillaume Nodet <gn...@gmail.com>.
On 4/19/06, Stefan Klinger <kl...@cs.york.ac.uk> wrote:
> I am a bit confused as well, especially in deciding which is the best
> way to install components and deploy service assemblies.
>
> The static way (using servicemix.xml) seems the easiest to me, however,
> the xml document can get very large and difficult to read after a while.

Right on both points.  You can not have logical groups of related
components (lightweight or not) as you do with a service assembly.

>
> If I want to install them at run-time, I have several choices:
> - use the lwcontainer for pojos
> - use the jbi compliant way for standard components
> - programmatically add either components (as often done in the test cases)

In the tests, this is not really programmatic, just a copy of the
installer in the install dir...

> - there also used to be the spring client toolkit for pojos, where you
> could also create jbi compliant installers using maven jbi:jbi - it says
> it's deprecated, but it still works for me
>
> I am not sure which one to choose, so I will try a number of different
> ways. BTW, Is there an example of how to create jbi service assemblies
> and deploy them with a jbi component at run-time?

Take a look at the soap-binding demo, or the loan-broker.  They both
create service units / service assemblies, but they put them in the
deploy directory.  If you need, you should be able to use ant tasks
(see the ant dir in the distribution) to deploy them on an already
running container.

Cheers,
Guillaume Nodet

>
> Thanks,
> Stefan
>
>
> Guillaume Nodet wrote:
>
> >Well, I think you have quite well understood these confusing concepts.
> >I have tried to make them a bit more clear in
> >http://docs.codehaus.org/display/SM/What+is+a+lightweight+component
> >
> >Hope this helps,
> >Guillaume Nodet
> >
> >
> >On 4/19/06, kahon <ka...@sohu.com> wrote:
> >
> >
> >>   What's the meaning of a Pojo Component? Then non-Pojo Component?
> >>   And the concept Light-Weighter Component verus Standard component?
> >>   At first I think Components which have a Component Impl extends
> >>ComponentSupport is a Pojo component,and the others are non-Pojo Compnents.
> >>But when I see the ComponentMBeanImpl's pojo attribute and the HttpComponent
> >>instance's activation from source code in the Junit TestCase( in the
> >>servicemix-http project),I find the HttpComponent in that Junit test case
> >>seems like a pojo Component,because the HttpComponent's activation calls to
> >>JBIContainer's method activateComponent(File installationDir, Component
> >>component, String description,
> >>                                        ComponentContextImpl context,
> >>ActivationSpec activationSpec, boolean pojo, boolean binding, boolean
> >>service) with the parameter pojo set true.
> >>    So in this case the HttpComponent is a pojo component? If so,i'm
> >>wondering what's difference of a pojo Component and a non-pojo component?
> >>
> >>    As the latter confusion,I think the lightweight component has a
> >>ComponentSupport's subclass,and the the others are standard components.
> >>    Is my view right?
> >>--
> >>View this message in context: http://www.nabble.com/some-concepts-in-Servicemix-confused-me---t1472508.html#a3982036
> >>Sent from the ServiceMix - User forum at Nabble.com.
> >>
> >>
> >>
> >>
>
>

Re: some concepts in Servicemix confused me--

Posted by kahon <ka...@sohu.com>.
    The way you think the best to install and deploy JBI things depends on
your Servicemix Use Case.If u don't want to deploy after servicemix start,u
should use the static deploy using a servicemix.xml file.the other,use
dynamic deploy(including installation).In both case the component can be a
pojo component or a JBI standard component.
--
View this message in context: http://www.nabble.com/some-concepts-in-Servicemix-confused-me---t1472508.html#a4001327
Sent from the ServiceMix - User forum at Nabble.com.


Re: some concepts in Servicemix confused me--

Posted by Stefan Klinger <kl...@cs.york.ac.uk>.
I am a bit confused as well, especially in deciding which is the best 
way to install components and deploy service assemblies.

The static way (using servicemix.xml) seems the easiest to me, however, 
the xml document can get very large and difficult to read after a while.

If I want to install them at run-time, I have several choices:
- use the lwcontainer for pojos
- use the jbi compliant way for standard components
- programmatically add either components (as often done in the test cases)
- there also used to be the spring client toolkit for pojos, where you 
could also create jbi compliant installers using maven jbi:jbi - it says 
it's deprecated, but it still works for me

I am not sure which one to choose, so I will try a number of different 
ways. BTW, Is there an example of how to create jbi service assemblies 
and deploy them with a jbi component at run-time?

Thanks,
Stefan


Guillaume Nodet wrote:

>Well, I think you have quite well understood these confusing concepts.
>I have tried to make them a bit more clear in
>http://docs.codehaus.org/display/SM/What+is+a+lightweight+component
>
>Hope this helps,
>Guillaume Nodet
>
>
>On 4/19/06, kahon <ka...@sohu.com> wrote:
>  
>
>>   What's the meaning of a Pojo Component? Then non-Pojo Component?
>>   And the concept Light-Weighter Component verus Standard component?
>>   At first I think Components which have a Component Impl extends
>>ComponentSupport is a Pojo component,and the others are non-Pojo Compnents.
>>But when I see the ComponentMBeanImpl's pojo attribute and the HttpComponent
>>instance's activation from source code in the Junit TestCase( in the
>>servicemix-http project),I find the HttpComponent in that Junit test case
>>seems like a pojo Component,because the HttpComponent's activation calls to
>>JBIContainer's method activateComponent(File installationDir, Component
>>component, String description,
>>                                        ComponentContextImpl context,
>>ActivationSpec activationSpec, boolean pojo, boolean binding, boolean
>>service) with the parameter pojo set true.
>>    So in this case the HttpComponent is a pojo component? If so,i'm
>>wondering what's difference of a pojo Component and a non-pojo component?
>>
>>    As the latter confusion,I think the lightweight component has a
>>ComponentSupport's subclass,and the the others are standard components.
>>    Is my view right?
>>--
>>View this message in context: http://www.nabble.com/some-concepts-in-Servicemix-confused-me---t1472508.html#a3982036
>>Sent from the ServiceMix - User forum at Nabble.com.
>>
>>
>>    
>>


Re: some concepts in Servicemix confused me--

Posted by Guillaume Nodet <gn...@gmail.com>.
Well, I think you have quite well understood these confusing concepts.
I have tried to make them a bit more clear in
http://docs.codehaus.org/display/SM/What+is+a+lightweight+component

Hope this helps,
Guillaume Nodet


On 4/19/06, kahon <ka...@sohu.com> wrote:
>
>    What's the meaning of a Pojo Component? Then non-Pojo Component?
>    And the concept Light-Weighter Component verus Standard component?
>    At first I think Components which have a Component Impl extends
> ComponentSupport is a Pojo component,and the others are non-Pojo Compnents.
> But when I see the ComponentMBeanImpl's pojo attribute and the HttpComponent
> instance's activation from source code in the Junit TestCase( in the
> servicemix-http project),I find the HttpComponent in that Junit test case
> seems like a pojo Component,because the HttpComponent's activation calls to
> JBIContainer's method activateComponent(File installationDir, Component
> component, String description,
>                                         ComponentContextImpl context,
> ActivationSpec activationSpec, boolean pojo, boolean binding, boolean
> service) with the parameter pojo set true.
>     So in this case the HttpComponent is a pojo component? If so,i'm
> wondering what's difference of a pojo Component and a non-pojo component?
>
>     As the latter confusion,I think the lightweight component has a
> ComponentSupport's subclass,and the the others are standard components.
>     Is my view right?
> --
> View this message in context: http://www.nabble.com/some-concepts-in-Servicemix-confused-me---t1472508.html#a3982036
> Sent from the ServiceMix - User forum at Nabble.com.
>
>