I've not done a lot with validation yet... BUT I'm not a fan of the XPages built in Tab Control. I prefer to do it manually in Dojo. the reason is that for the XPages control - only the ACTIVE tab contents are sent to the browser. So clicking on a tab causes a round trip to the server and a partial refresh.
doing it in Dojo manually, all the content is set to the browser so you can really validate it all at once with Client Side JavaScript if you like.
Here's a snippet if you need it. you would still need to turn dojo on and include these modules...
<xp:panel dojoType="dijit.layout.TabContainer"
style="width: 350px; height: 300px">
<xp:panel dojoType="dijit.layout.ContentPane" title="dojo Tab 1">
Content for Tab 1
</xp:panel>
<xp:panel dojoType="dijit.layout.ContentPane" title="dojo Tab 2">
Content for Tab 2
</xp:panel>
<xp:panel dojoType="dijit.layout.ContentPane" title="dojo Tab 3">
Content for Tab 3
</xp:panel>
</xp:panel>
hope that helps...