I will use JAX-RPC Web service created in the following blog: https://tmilinovic.wordpress.com/2013/03/06/generating-jax-ws-clients-for-jax-rpc-and-jax_ws-web-services/
Mediator component route requests based on value of the version argument. Of course, it can be subsidiary, so that greater branch office will have their own server, etc…
The same functionality can be achieved by using Oracle Service Bus, but mediator runs in the same JVM as other components, so there is no bottlenecks due to inter process communication and marshalling/unmarshalling of data streams.
The following picture shows Mediator configuration. Service1 has plain arguments mapping, and in the WLSRPCService I transformed:
- input argument order by adding string “trinp1”
- response argument version by multiplying with 2
Service2 test pictures shows that all works as expected.