The SCA binding includes a boolean option, 'preferLocal'. According to SCABindingModel, SCAInvoker and observed behavior, if the value is not set to 'true' then the 'prefer Local' behavior is not enabled. The problem is that the JBDS tooling shows a default value of 'true' for an SCA binding, but the generated switchyard.xml shows no 'preferLocal' attribute in the SCA Binding element: <sca:binding.sca sy:clustered="true" sy:targetNamespace="urn:com.example.switchyard:world:1.0" sy:target="WorldService" sy:loadBalance="RandomStrategy" name="sca1"/>
Toggling the value in the IDE adds the attribute: <sca:binding.sca sy:clustered="true" sy:targetNamespace="urn:com.example.switchyard:world:1.0" sy:target="WorldService" sy:loadBalance="RandomStrategy" sy:preferLocal="true" name="sca1"/>
The problem: If the user does not toggle the value (taking the defaults given), then JBDS shows a 'true' value but no 'true' value goes into switchyard.xml. Later, the runtime will give 'false' behavior because it's the default.
|