Looks like the loadBundle tag does not get processed during Ajax requests so the bundle messages are never updated even when the Locale for the view root is validly changed. After doing some research and fiddling with the test case, I've adjusted ICE-3500 regression test by:
- removing the f:loadBundle and adding the following to the faces-config.xml file:
<resource-bundle>
<base-name>org.icefaces.qa.test.beans.messages</base-name>
<var>msgs</var>
</resource-bundle>
From my research it appears that f:loadBundle was never really suited for supporting dynamic changes, particularly during Ajax requests. Other frameworks (including ICEfaces) came up with their own loadBundle tags to help remedy this. The changes I've made are completely valid (and recommended) as a technique for supporting dynamic changes and work in both MyFaces and Mojarra. The ICE-2763 case is more complex but I'll try and apply a similar change there.
Linking to parent case.