On Tue, 2006-03-21 at 12:11 +0100, Charles Souillard wrote: > Hi all, > > I have an application wich provides a service called S1. > This application is running on a remote server and is accessible via > WebServices. > > What is the standard way to "publish" my service in SM. In fact the > functionnality needed is to use all provided BCs available in SM. > I can read in JBI spec : > "Service Engines are essentially standard containers for hosting > WSDL-defined service providers adnd service consumers *that are internal > to the JBI environment*" > > So should I > 1) create a SE for S1 which will receive messages from the NMR and > forward them to the WS BC which will call my external S1 service ? > 2) create a SE for S1 which will receive messages from the NMR and > forward them directly to my external S1 service ? > 3) create a BC for my S1 service ?
number 3 is the best for your scenario > > There is no way to "publish" a new service in SM without creating a > component (BC or SE), is that right ? > yes if the bus is a pure jbi esb, in SM for example you can use old modules configured in servicemix.xml > Schemas defined in JBI spec in 4.9 Examples is not the same. In fact the > message is transformed in SM using XSLT. In my case, I only want to > forward the message without any modification. So conceptually, there is > no need to have SE between BC1 and BC2... > right. > In the case my S1 service "speaks" a proprietary language, I only have > to create a new BC, is that right ? > the new BC would expose the service on the bus. Once the service is available on the bus configuring the routing on your needs you can do many thing. One could be forwarding to another BC. > But if I want to use an existing BC like the one doing WS calls, is it > possible to "publish" my S1 service only by deploying a SU and telling > it is a provider ? I'm not sure to understand but what you probably want to do is to deploy a service assembly containing two service unit. su1 uses BC1 to bind your existing service and publish it on he bus as a new endpoint su2 uses BC2 to bind the endpoint to a new exposed service (the kind of serice depends on the type of BC) bye Raffaele > > Thanks fors your help. > > Charles >
