Our domain layer contains two different classes RG and SRG (they do not inherit from each other). However they both embed an embeddable class E with a field "name"
In the GUI we have a page with a single form and two regions. One for adding a RG object and one for adding a SRG object. Both regions contain a h:inputText for the "name" field. So the first inputText is bound to RG.embedded.name and the second on SRG.embedded.name. Both inputTexts have a rich:validator tag as a child component.
Which is not wrong because the validation (@NotNull on the "name" field in the Embedded class) is the same for both value bindings. It is a little bit confusing to see a method with a name of RGName_3Av on a component that is actually bound to SRG and so we would expect the method to call SRGName_3Av, but it's certainly not wrong and I even find it a very nice optimization.
Hope you can reproduce the problem with the above description and fix the problem or provide a workaround?