Hello 

My understanding of JBI specs is that service providers are accessible through 
endpoints. On the other hand I don't see any need of having endpoint for 
service consumers. What I observed in ServiceMix is that components create 
endpoints for both consumers and providers (this seems to come from Common 
framework). For example, it's welcomed that FileSender creates service, but 
FilePoller doesn't require to activate any endpoint as it acts as consumer 
only. 

The problem is that ClusterEngine seems to be tied with this ServiceMix Commons 
behaviour: I've got some issues with a pure JBI component (not based on 
ServiceMix Common) in clustered environment. Similar to ServiceMix file 
component, my component supports 2 symetric features: 
- poller is a consumer (does not activate service endpoint), installed on node 
1 
- writer is a provider (activate service endpoint), installed on node 2 

Service unit manager is not based XBean but JAXB instead and I would like to 
hide cluster registration object. So I built a bundle that listen for endpoint 
registry events and create automatically ClusterRegistration OSGi service 
implicitly for each active endpoint. Provider should be implicitly accessible 
from node 1, but as poller does not register any ClusterRegistration service, 
the scenario "consumer on node 1 / provider on node 2" fails. 

Question: is that possible to use Cluster Engine with components that are not 
based on ServiceMix Commons? (without activated endpoint for service consumer) 

Notice that it used to work with previous Fuse ESB releases but does not seems 
to work with 4.3.0-fuse-03-00.

Thanks in advance

Reply via email to