JSF - Ajax precisando de dois clicks para funcionar

Tenho um formulário de cadastro de pessoa fisica e cadastro de pessoa jurídica. Ambos ficam na mesma pagina, e mudam atravez de um radio.
Até ai tudo bem.
O problema vem na hora de exibir as mensagens de erro: Quando vou cadastra um cliente fisico em branco, as mensagens de erro aparecem normal. Já quando vou cadastrar uma pessoa jurídica em branco, preciso dar dois clicks no <p:commandbutton> para que as mensagens de erro aparecam.

Estou usando JSF 2 e Primefaces.

Cara coloca seu codigo ai pra gente ver.

[code] <f:view>

<h:outputText styleClass=“infoForm” value=“Campos marcados com asterisco(*) são obrigatórios”/>
<p:panel header="#{clienteController.tituloPanel}" id=“cadastroPanel” style=“width: 700px”>
<h:form id=“selectRadio”>
<p:messages id=“mensagensErro”/>
<h:panelGrid columns=“2” style=“margin-right: 210px”>
<h:graphicImage library=“images” name=“seta_selecione.gif” alt=“Tipo de Cliente”/>
<h:selectOneRadio value="#{clienteController.renderizaForm}" style=“font-weight: bold;”>
<f:selectItem itemLabel=“Pessoa Física” itemValue=“clienteFisico” />
<f:selectItem itemLabel=“Pessoa Jurídica” itemValue=“clienteJuridico” />
<f:ajax execute="@form" render=":cadastroPanel" event=“change”/>
</h:selectOneRadio>
</h:panelGrid>


</h:form>

                    <p:outputPanel id="outputforms">
                        <h:form id="clienteFisico" rendered="#{clienteController.renderizaForm.equals('clienteFisico')}" >
                            <h:panelGrid id="clienteFisicoPanelGrid" columns="2" style="padding-bottom: 10px;" columnClasses="coluna1, coluna2">
                                <h:outputLabel value="Nome *" for="nome" />
                                <h:inputText id="nome" value="#{clienteController.pessoaFisica.nome}" title="Nome" size="35"/>
                                <h:outputLabel value="Cpf *" for="cpf"/>
                                <p:inputMask id="cpf" value="#{clienteController.pessoaFisica.cpf}" mask="999.999.999-99" title="Cpf"/>
                                <h:outputLabel value="Rg *" for="rg" />
                                <h:column>
                                    <h:inputText id="rg" value="#{clienteController.pessoaFisica.rg}" title="Rg"/>
                                    <h:outputText value="(Apenas números, sem pontos ou traço)" styleClass="infoForm"/>
                                </h:column>
                                <h:outputLabel value="Sexo *" for="sexo" />
                                <h:selectOneMenu id="sexo" value="#{clienteController.pessoaFisica.sexo}"  title="Sexo" >
                                    <f:selectItems value="#{clienteController.sexo}" var="item" itemLabel="#{item.descricao}" />
                                </h:selectOneMenu>
                                <h:outputLabel value="Data de Nascimento *" for="dataNascimento" />
                                <p:calendar value="#{clienteController.pessoaFisica.dataNascimento.time}" id="dataNascimento" pattern="dd/MM/yyyy"/>
                                <h:outputLabel value="Email *" for="email" />
                                <h:inputText id="email" value="#{clienteController.pessoaFisica.email}" title="Email" size="35" />
                                <h:outputLabel value="Telefone *" for="telefone1" />
                                <p:inputMask mask="(99) 9999 - 9999" id="telefone1" value="#{clienteController.pessoaFisica.telefone1}" title="Telefone1" />
                                <h:outputLabel value="Telefone 2" for="telefone2" />
                                <p:inputMask mask="(99) 9999 - 9999" id="telefone2" value="#{clienteController.pessoaFisica.telefone2}" title="Telefone2" />
                                <h:outputLabel value="Celular " for="celular" />
                                <p:inputMask mask="(99) 9999 - 9999" id="celular" value="#{clienteController.pessoaFisica.celular}" title="Celular" />
                                <h:outputLabel value="Fax " for="fax" />
                                <p:inputMask mask="(99) 9999 - 9999" id="fax" value="#{clienteController.pessoaFisica.fax}" title="Fax" />
                                <h:outputLabel value="CEP *" for="cep"/>
                                <p:autoComplete id="cep" value="#{clienteController.cep}" completeMethod="#{clienteController.complete}" selectListener="#{clienteController.handleCEPSelecionado}"
                                                onSelectUpdate="siglaUf,cidade,bairro,logradouro,complemento"/>
                                <h:outputLabel value="UF *" for="siglaUf"/>
                                <h:inputText  id="siglaUf" value="#{clienteController.enderecoClienteFisico.siglaUF}" disabled="true"/>
                                <h:outputLabel value="Cidade *" for="cidade"/>
                                <h:inputText id="cidade" value="#{clienteController.enderecoClienteFisico.cidade}" disabled="true"/>
                                <h:outputLabel value="Bairro *" for="bairro"/>
                                <h:inputText id="bairro" value="#{clienteController.enderecoClienteFisico.bairro}"/>
                                <h:outputLabel value="Logradoudo *" for="logradouro"/>
                                <h:inputText id="logradouro" value="#{clienteController.enderecoClienteFisico.logradouro}"/>
                                <h:outputLabel value="Complemento" for="complemento"/>
                                <h:inputText id="complemento" value="#{clienteController.enderecoClienteFisico.complemento}"/>
                                <h:outputLabel for="numero" value="Número *"/>
                                <h:inputText id="numero" value="#{clienteController.enderecoClienteFisico.numero}"/>
                            </h:panelGrid>
                            <p:commandButton action="#{clienteController.saveClienteFisico}" value="Salvar" id="buttonFisico" image="salvar" update="clienteFisico selectRadio:mensagensErro" />
                        </h:form>

                        <h:form id="clienteJuridico" rendered="#{clienteController.renderizaForm.equals('clienteJuridico')}" >
                            <h:panelGrid id="clienteJuridicoPanelGrid" columns="2" columnClasses="coluna1, coluna2">
                                <h:outputLabel value="CNPJ *" for="cnpj" />
                                <h:inputText id="cnpj" value="#{clienteController.pessoaJuridica.cnpj}" title="Cnpj" />
                                <h:outputLabel value="Razao Social *" for="razaoSocial" />
                                <h:inputText id="razaoSocial" value="#{clienteController.pessoaJuridica.razaoSocial}" title="RazaoSocial" />
                                <h:outputLabel value="Nome Fantasia *" for="nomeFantasia" />
                                <h:inputText id="nomeFantasia" value="#{clienteController.pessoaJuridica.nomeFantasia}" title="NomeFantasia" />
                                <h:outputLabel value="Tipo *" for="tipoCliente" />
                                <h:selectOneMenu id="tipoCliente" value="#{clienteController.pessoaJuridica.tipoPessoaJuridica}" title="TipoCliente">
                                    <f:selectItems value="#{clienteController.tipoPessoaJuridica}" var="item" itemLabel="#{item.descricao}"/>
                                </h:selectOneMenu>
                                <h:outputLabel value="Telefone *" for="telefone1" />
                                <p:inputMask mask="(99) 9999 - 9999" id="telefone1" value="#{clienteController.pessoaJuridica.telefone1}" title="Telefone1" />
                                <h:outputLabel value="Telefone 2" for="telefone2" />
                                <p:inputMask mask="(99) 9999 - 9999" id="telefone2" value="#{clienteController.pessoaJuridica.telefone2}" title="Telefone2" />
                                <h:outputLabel value="Celular " for="celular" />
                                <p:inputMask mask="(99) 9999 - 9999" id="celular" value="#{clienteController.pessoaJuridica.celular}" title="Celular" />
                                <h:outputLabel value="Fax " for="fax" />
                                <p:inputMask mask="(99) 9999 - 9999" id="fax" value="#{clienteController.pessoaJuridica.fax}" title="Fax" />
                                <h:outputLabel value="Email *" for="email" />
                                <h:inputText id="email" value="#{clienteController.pessoaJuridica.email}" title="Email" />
                                <h:outputLabel value="CEP *" for="cep"/>
                                <p:autoComplete id="cep" value="#{clienteController.cep}" completeMethod="#{clienteController.complete}" selectListener="#{clienteController.handleCEPSelecionado}"
                                                onSelectUpdate="siglaUf,cidade,bairro,logradouro,complemento"/>
                                <h:outputLabel value="UF *" for="siglaUf"/>
                                <h:inputText  id="siglaUf" value="#{clienteController.enderecoClienteJuridico.siglaUF}" disabled="true"/>
                                <h:outputLabel value="Cidade *" for="cidade"/>
                                <h:inputText id="cidade" value="#{clienteController.enderecoClienteJuridico.cidade}" disabled="true"/>
                                <h:outputLabel value="Bairro *" for="bairro"/>
                                <h:inputText id="bairro" value="#{clienteController.enderecoClienteJuridico.bairro}"/>
                                <h:outputLabel value="Logradoudo *" for="logradouro"/>
                                <h:inputText id="logradouro" value="#{clienteController.enderecoClienteJuridico.logradouro}"/>
                                <h:outputLabel value="Complemento" for="complemento"/>
                                <h:inputText id="complemento" value="#{clienteController.enderecoClienteJuridico.complemento}"/>
                                <h:outputLabel for="numero" value="Número *"/>
                                <h:inputText id="numero" value="#{clienteController.enderecoClienteJuridico.numero}"/>
                            </h:panelGrid>
                            <p:commandButton action="#{clienteController.saveClienteJuridico}" update="selectRadio:mensagensErro clienteJuridico"   image="salvar" value="Salvar" id="buttonJuridico"/>
                        </h:form>
                    </p:outputPanel>
                </p:panel>
            </center>
        </f:view>[/code]