[RESOLVIDO] Primefaces 6 commandbutton não chama dialog

Tenho uma página em composicao (ui:composition). Dentro dela, tenho um botao (p:commandButton) que no seu parâmetro oncomplete deve chamar um dialog (p:dialog).
Ele funciona no primefaces 4, porém estou migrando para a versão 6.2, e parou de funcionar.
Ele dá um erro no log do navegador
statusDialog is not defined

Segue abaixo meu código

<ui:composition ... >

<ui:define name="corpo-da-pagina">

<h:form id="form" preprendId="false">

<p:commandButton value="Adicionar" actionListener="#{EnPaisSB.prepararAdicionar}" style="font-size: 10px" oncomplete="PF('man').show();"  update="@form" />

<p:dataTable ...></p:dataTable>

<p:dialog modal="true" header="Manutencao"	widgetVar="man" resizable="true" width="500" id="dialog" closable="false">...</p:dialog>

</h:form>

</ui:define>

</ui:composition>

Cara, talvez este componente não esteja em um contexto onde o commandButton o encontre ou o id gerado é diferente. São problemas muito comuns no jsf desde muito tempo

acabei de fazer um teste usando um p:commandButton sem fazer nada.

<p:commandButton value="teste" />

e o erro no console do navegador continua.
Será que é algum bug da versão?
Percebi que tem esse comportamento nas versões 5, 6 e 7 do primefaces.
Na versão 4 funciona normalmente

Veja o html gerado, clica com o botão direito do mouse sobre qualquer componente e verifica qual é o modo como o id final é gerado.

Criei um botão agora (<p:commandButton value=“teste” />) e o erro no navegador continua o mesmo.
Será que é algum bug das versões?
Percebi que tem esse comportamento nas versões 5, 6 e 7 do primefaces.
Na versão 4 funciona normalmente

No navegador o botão está assim

<button id="form:j_idt110" name="form:j_idt110" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" onclick="PrimeFaces.ab({s:&quot;form:j_idt110&quot;,u:&quot;form&quot;,onco:function(xhr,status,args){PF('man').show();;}});return false;" style="font-size: 10px" type="submit" role="button" aria-disabled="false"><span class="ui-button-text ui-c">Adicionar</span></button>

É o padrão para o primefaces, ele sempre inclui o form antes do id que você definiu.
Chegou a verificar se o id do tal dialog é o mesmo apresentado no dialog e no oncomplete?

Eu não consigo abrir o dialog com a versão 5, 6 ou 7 do primefaces.
Usei a versão 4 e consegui ver o ID do dialog (form:dialog)

Mas o dialog está lá no html gerado. Ele fica lá e quando o oncomplete é invocado, ele apenas remove o display: none por display:block (ou similar).

é verdade Darlan, desculpa.
O id é o mesmo (form:dialog)
O estranho é que eu criei um botão sem action, onclick, oncomplete. E mesmo assim ele dispara esse erro no console do navegador

Comportamento estranho.

Criei uma tela de exemplo que tem um p:commandButton que chama o p:dialog e funcionou.
Acontece que minha tela “TblEnPais.xhtml” é uma composição de um template “MenuPrincipal.xhtml” e causa esse erro.

Descobri o problema, é meu template.
Como é uma aplicação legada, o template “MenuPrincipal.xhtml” é uma bagunça.
Criei um template e composição de teste e usei o commandButton chamando o dialog e funcionou.