Not sure if this is the reason but you could have multiple @UiChild
definitions.
Probably GWT doesn't use type information but only the tagname to check which function to call:
<gui:MyCustomContainer>
<gui:myHeader>
<g:SomeWidget>
</gui:myHeader>
<gui:myContent>
<g:SomeWidget>
</gui:myContent>
</gui:MyCustomContainer>
And in your MyCustoContainer
class:
@UiChild(tagname="myHeader")
public void addHeader(Widget widget);
@UiChild(tagname="myContent")
public void addContent(Widget widget);