Estou a desenvolver uma aplicação web no IDE Eclipse e estou a usar Jboss + jboss Seam + hibernate.
Entretanto coloquei um modalPanel, do richFaces, com uma mensagem de confirmação para o utilizador e funciona perfeito no IE7 no entanto no firefox o modalPanel é renderizado durante 1 ou 2 segundos e desaparece sem que o utilizador tenha tempo de efectuar qualquer operação.
Aqui vai o código do modalPanel
<rich:modalPanel id="panel">
<f:facet name="header">
Aviso
</f:facet>
<h:form id="del">
<div class="dialog">
<h:outputText value="Atenção!!" style="font-size:medium;font-weight:bold;"/>
<br/><br/><br/>
<h:outputText value="Se apagar uma casa serão também apagados os inquelinos a ela associados!" />
<br /><br />
<h:outputText value="Deseja Continuar a operação" />
<br /><br /><br />
</div>
<div class="actionButtons">
<s:button id="delete"
value="Sim"
action="#{casaHome.remove}"
immediate="true"
view="/#{empty casaFrom ? 'Consulta_casas' : casaFrom}.xhtml">
<rich:componentControl for="panel" attachTo="delete" operation="hide" event="onclick"/>
</s:button>
<h:commandButton id = "cancelB" value="Cancelar">
<rich:componentControl for="panel" attachTo="cancelB" operation="hide" event="onclick"/>
</h:commandButton>
</div>
</h:form>
</rich:modalPanel>
Alguém já passou por uma situação semelhante, ou conhece a razão deste comportamento?
no firefox 3.0.3 rodando no meu ubuntu 8.10 funcionou perfeito, por isso proponho uma solução alternativa:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:rich="http://richfaces.org/rich">
<head>
</head>
<body>
<h:commandButton id="del1" value="Apagar" immediate="true" [b][color=blue]onclick="Richfaces.showModalPanel('panel')"[/color][/b]/>
<rich:modalPanel id="panel">
<f:facet name="header">
Aviso
</f:facet>
<h:form id="del">
<div class="dialog"><h:outputText value="Atenção!!"
style="font-size:medium;font-weight:bold;" /> <br />
<br />
<br />
<h:outputText
value="Se apagar uma casa serão também apagados os inquelinos a ela associados!" />
<br />
<br />
<h:outputText value="Deseja Continuar a operação" /> <br />
<br />
<br />
</div>
<div class="actionButtons"><h:commandButton id="cancelB"
value="Cancelar">
<rich:componentControl for="panel" attachTo="cancelB"
operation="hide" event="onclick" />
</h:commandButton></div>
</h:form>
</rich:modalPanel>
</body>
</html>
e pra fechar pode usar o Richfaces.hideModalPanel(‘panel’) no button do da janela, mas testa com o componentControl pra fechar, pra vê se da pau denovo.
acho que não seja o xml, tenta limpar o cahce do firefox, executa o clean/build na aplicação, remove o servidor que ta configurado no seu ide e depois adiciona de novo(uso eclipse 3.4 + tomcat 6)
tambem tive esse problema do show/hideModalPanel não funcionar mas era porque eu escrevia RichFaces. ao inves de Richfaces. apesar de que na documentação ta maiusculo, qual versão do Rich tu usas :?: estou usando o 3.2.1 GA.
Pois é dlf, não consegui solucionar a questão no entanto tenho quase a certeza de que está relacionado com o facto do modalPanel estar a ser definido dentro de um form pois a documentação do richfaces adverte para essa possibilidade.
No entanto estou a atingir o dead line para entrega do projecto por isso acho que vou resolver de outra forma, mais tarde vou voltar para tentar resolver…
Entretanto quero agradecer a tua colaboração para tentar resolver o problema.