Richfaces: renderizar o modal panel

4 respostas
Vini_Fernandes

Estou trabalhando com Rich faces e tenho o seguinte componente <rich:modalPanel binding="#{meuBean.modalPanel}"> e em determinada circuntancia eu chamo um metodo para abrir o modal em meu managed bean:

public void abrirModal(){
   this.modalPanel.setRendered(true);
}

mas fazendo isso eu ainda nao consigo renderizar o modal.

Alguem sabe o que esta acontecendo?

valeuuu

4 Respostas

jeroqueiroz

Cara,

Coloque o mesmo dentro de um form e coloque o rendered no <rich:modalPanel para o ID deste form, você verá que ao iniciar a tela na arvore de componente e como se não existisse o ><rich:modalPanel, dai qdo você somente seta como true ele não renderiza.

Isso e um teste pra que você possa perceber.

>

Vini_Fernandes

Cara, nao entendi o que voce quis dizer com: “coloque o rendered no <rich:modalPanel para o ID deste form”.

Pode me explicar um pouco mais?

vi-gb

Este e o botao que chama o modalPanel, eu faco um cadastro e se der erro mostra o modalPanel

<a4j:commandLink > <h:graphicImage value="/img/myImage.png" /> <rich:toolTip value="#{msg.cadastrar}" /> <a4j:support event="onclick" action="#{meuBean.fazAlgo}" oncomplete="#{meuBean.showModelPanel}" /> </a4j:commandLink>

Aqui e a chamada do modal panel, é um script por isso uso o oncomplete para recebe-lo.
meuModalPanel é o nome do meu modal panel.

public String getShowModelPanel() { return "javascript:Richfaces.showModalPanel('meuModalPanel',{left:'auto', top:'auto', width:'450px', height:'130px' });"; }

Pelo bean eu não consegui fazer. :frowning:
Espero ter ajudado.

jeroqueiroz

Descarte o que falei acima. Entendi errado o que você queria.

Veja o exemplo abaixo, aqui uso desta forma. veja se ter serve em algo:

&lt;c:choose&gt;
	&lt;c:when test="${meuFaces.isValid != 1}"&gt;
		&lt;a4j:support event="onblur" eventsQueue="onfocus, onclick" action="#{meuFaces.metodoFazer}" reRender="campos"  oncomplete="if(#{meuFaces.metodoNovo}){Richfaces.showModalPanel('panel');}else if(#{meuFaces.atualizar}){Richfaces.showModalPanel('panelAtualizar');}" &gt;&lt;/a4j:support&gt;
	&lt;/c:when&gt;
	&lt;c:otherwise&gt;
		&lt;a4j:support event="onblur" eventsQueue="onfocus, onclick" action="#{meuFaces.metodoFazer}" reRender="campos" oncomplete="if(#{meuFaces.metodoNovo}){Richfaces.showModalPanel('panel');}else if(#{meuFaces.atualizar}){Richfaces.showModalPanel('panelAtualizar');}"&gt;&lt;/a4j:support&gt;
	&lt;/c:otherwise&gt;
&lt;/c:choose&gt;
Criado 4 de dezembro de 2009
Ultima resposta 4 de dez. de 2009
Respostas 4
Participantes 3