You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Grzegorz Kokosiński <gk...@touk.pl> on 2009/01/07 12:50:10 UTC

Service unit which depends on jbi component and shared library???

Hi,

I want to write a service unit which will have two dependencies. First 
is a normal jbi component like servicemix-jsr181, and the second is a 
jbi shared library like servicemix-shared (I want to using it at least 
in two different service units).

I added these two components into pom as a normal maven dependency. And 
it works only for servicemix-jsr181, but it seems to not work with my 
shared library.

When I deploy it on servicemix on which component servicemix-jsr181 is 
not installed then deployment is suspended, but when I deploy it when 
just my shared library is not installed then deployment is not 
suspended  and consequently deployment fails.

Im using servicemix 3.3.

Thanks in advance.

Grzesiek Kokosiński

Re: Service unit which depends on jbi component and shared library???

Posted by Grzegorz Kokosiński <gk...@touk.pl>.
Thanks for answer.

Freeman Fang wrote:
> Hi,
>
> Shared Lib means the lib is shared by components level (Binding 
> Component or ServiceEngine), you can specify the shared lib for 
> components in the jbi.xml (descriptor) of component.
> If component A specify shared lib B, then if Shared lib B not 
> installed, component A will suspend.
> But Shared Lib doesn't means it's shared across SA(Service Assembly),  
> so the SA won't suspend when the Shared Lib is installed.
> The dependency path is
> Shared Lib <====Components<=====SA
> But there is no
> Shared Lib <=====SA
>
> Freeman
>
> Grzegorz Kokosiński wrote:
>> Hi,
>>
>> I want to write a service unit which will have two dependencies. 
>> First is a normal jbi component like servicemix-jsr181, and the 
>> second is a jbi shared library like servicemix-shared (I want to 
>> using it at least in two different service units).
>>
>> I added these two components into pom as a normal maven dependency. 
>> And it works only for servicemix-jsr181, but it seems to not work 
>> with my shared library.
>>
>> When I deploy it on servicemix on which component servicemix-jsr181 
>> is not installed then deployment is suspended, but when I deploy it 
>> when just my shared library is not installed then deployment is not 
>> suspended  and consequently deployment fails.
>>
>> Im using servicemix 3.3.
>>
>> Thanks in advance.
>>
>> Grzesiek Kokosiński
>>
>
>
>


Re: Service unit which depends on jbi component and shared library???

Posted by Freeman Fang <fr...@gmail.com>.
Hi,

Shared Lib means the lib is shared by components level (Binding 
Component or ServiceEngine), you can specify the shared lib for 
components in the jbi.xml (descriptor) of component.
If component A specify shared lib B, then if Shared lib B not installed, 
component A will suspend.
But Shared Lib doesn't means it's shared across SA(Service Assembly),  
so the SA won't suspend when the Shared Lib is installed.
The dependency path is
Shared Lib <====Components<=====SA
But there is no
Shared Lib <=====SA

Freeman

Grzegorz Kokosiński wrote:
> Hi,
>
> I want to write a service unit which will have two dependencies. First 
> is a normal jbi component like servicemix-jsr181, and the second is a 
> jbi shared library like servicemix-shared (I want to using it at least 
> in two different service units).
>
> I added these two components into pom as a normal maven dependency. 
> And it works only for servicemix-jsr181, but it seems to not work with 
> my shared library.
>
> When I deploy it on servicemix on which component servicemix-jsr181 is 
> not installed then deployment is suspended, but when I deploy it when 
> just my shared library is not installed then deployment is not 
> suspended  and consequently deployment fails.
>
> Im using servicemix 3.3.
>
> Thanks in advance.
>
> Grzesiek Kokosiński
>


Re: Service unit which depends on jbi component and shared library???

Posted by Ashwin Karpe <as...@progress.com>.
Hi,

Have you tried the following

	<dependency>
	       <groupId>org.apache.servicemix.tooling</groupId>
	       <artifactId>servicemix-jsr181</artifactId>
	       <version>xxx</version>
	       <scope>provided</scope>
             </dependency>

In this case, the code will compile but the dependency jars will not be
added to the service unit.

So long as the components are deployed via the deploy/hotdeploy directory
before your SU is picked up, my sense is that everything should work.

Cheers,

Ashwin...


Grzegorz Kokosiński wrote:
> 
> Hi,
> 
> I want to write a service unit which will have two dependencies. First 
> is a normal jbi component like servicemix-jsr181, and the second is a 
> jbi shared library like servicemix-shared (I want to using it at least 
> in two different service units).
> 
> I added these two components into pom as a normal maven dependency. And 
> it works only for servicemix-jsr181, but it seems to not work with my 
> shared library.
> 
> When I deploy it on servicemix on which component servicemix-jsr181 is 
> not installed then deployment is suspended, but when I deploy it when 
> just my shared library is not installed then deployment is not 
> suspended  and consequently deployment fails.
> 
> Im using servicemix 3.3.
> 
> Thanks in advance.
> 
> Grzesiek Kokosiński
> 
> 


-----
--- 
Ashwin Karpe, Principal Consultant, PS - Opensource Center of Competence 
Progress Software Corporation
14 Oak Park Drive
Bedford, MA 01730
--- 
+1-972-304-9084 (Office) 
+1-972-971-1700 (Mobile) 
---- 
Blog: http://opensourceknowledge.blogspot.com/


-- 
View this message in context: http://www.nabble.com/Service-unit-which-depends-on-jbi-component-and-shared-library----tp21329789p21330219.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.