Using the Callable EntryPointResolver
Mule’s default mechanism to determine which method in a component should be used is encoded inside its Entry Point Resolver objects. The default one is sufficient in many situations but there are cases when this needs to be changed.
Out of the box, there are a number of other entry point resolvers – the CallableEntryPointResolver being one of them. As its name implies, it will look for the existence of the Callable interface in the component and will only invoke the onCall() method. It will not try to match up the parameter list with the MuleMessage payload or any of the other steps that the legacy entry-point-resolver does.
Like all entry point resolvers, this is configured on the model and will be applied to all services in that model:
<model> <callable-entry-point-resolver/> <service name="myCallable"> <inbound> <inbound-endpoint ref="forCallable"/> </inbound> <component class="com.ricston.tests.CallableService"/> </service> </model>
In this example, the myCallable service refers to the CallableService component. If this component does not implement the Callable interface, Mule will not be able to invoke it since the model is configured to use the callable-entry-point-resolver.

If you enjoyed this post, make sure you subscribe to my RSS feed!
Tags: callable-entry-point-resolver, legacy-entry-point-resolver, MuleMessage
October 12th, 2009 at 10:01 AM
[...] Using the Calla … 10/01 [...]
November 19th, 2009 at 11:01 PM
[...] Using the Calla … 10/01 [...]