Jboss Seam + JSF + RichFaces + rich:modalPanel (RESOLVIDO)

5 respostas
ViniciusNaka

boa tarde pessoal… estou começando a aprender sobre essas tecnologias e me surgiu esse problema…

estou tentando mostrar um rich:modalPanel para confirmação de uma informação… seguem abaixo os meus códigos…

a:commandLink

<a:commandLink id="tclientDelete" 
								 oncomplete="#{rich:component('mdlConfirmaDesativarCliente')}.show()">
								<h:graphicImage value="/images/Delete-32.png"
									styleClass="hidelink" width="15px" height="15px" id="deletar"
									title="Desativar" />
								<s:conversationPropagation type="join" />	
							</a:commandLink>

meu panel…

<rich:modalPanel id="mdlConfirmaDesativarCliente" width="340"
							height="100">
							<f:facet name="header">
								<h:panelGroup>
									<h:outputText
										value="#{messages['template.envio.gestao.lbl.cancelar.envio']}"></h:outputText>
								</h:panelGroup>
							</f:facet>
							<f:facet name="controls">
								<h:panelGroup>
									<h:graphicImage value="/images/fechar.png"
										styleClass="hidelink" id="lnkConfCancelarFechar" width="20"
										height="20" />
									<rich:componentControl for="mdlConfirmaDesativarCliente"
										attachTo="lnkConfCancelarFechar" operation="hide"
										event="onclick" />
								</h:panelGroup>
							</f:facet>						
							<table width="100%">
								<tr>
									<td colspan="2" align="center"><label> <h:outputText
												value="Deseja realmente desativar o Cliente" /> </label>
									</td>
								</tr>
								<tr>
									<td colspan="2">&nbsp;</td>
								</tr>
								<tr>
									<td colspan="2">&nbsp;</td>
								</tr>								 
								<tr>
									<td align="center">
										<a:commandButton type="submit"
											action="#{tclientHome.desativar}"											
											value="#{messages['template.envio.gestao.btn.sim']}"
											id="btnSimCancelar" style="width:100px"
											onclick="#{rich:component('mdlConfirmaDesativarCliente')}.hide()">
											<f:param name="tclientIdClient" value="#{_tclient.idClient}" />
										</a:commandButton>										
										<a:commandButton
											value="#{messages['template.envio.gestao.btn.nao']}"
											id="btnNaoCancelar" style="width:100px" 
											onclick="#{rich:component('mdlConfirmaDesativarCliente')}.hide()" />
									</td>
								</tr>						
							</table>
						</rich:modalPanel>

ao clicar no commandLink não acontece nada :(, deveria aparecer o panel.

desde já agradeço a ajuda.

abs

5 Respostas

marcosharbs

tente mudar a chamada do seu modal e faça como abaixo para testar:

<a4j:commandLink id="tclientDelete"
			    oncomplete="Richfaces.showModalPanel('mdlConfirmaDesativarCliente');" 
		            reRender="mdlConfirmaDesativarCliente">
</a4j:commandLink>
ViniciusNaka

obrigado pela resposta marcosharbs…

mas infelizmente não funcionou :frowning:

balrog

vc parece ter esquecido o form

ViniciusNaka

balrog, vc diz o form aonde?.. seria colocar o modalPanel dentro de um form?

ViniciusNaka

pessoal, voltei a mexer com isso hj e consegui resolver…
minha pagina xhtml ficava dentro de um <h:form>, retirei meu modelPanel desse <h:form> e coloquei minha div dentro de outro form…

<rich:modalPanel id="mdlConfirmaDesativarCliente" width="220"
			height="100">			
				<f:facet name="header">
					<h:panelGroup>
						<h:outputText
							value="#{messages['template.envio.gestao.lbl.cancelar.envio']}"></h:outputText>
					</h:panelGroup>
				</f:facet>
				<f:facet name="controls">
					<h:panelGroup>
						<h:graphicImage value="/images/fechar.png" styleClass="hidelink"
							width="20" height="20" id="lnkDesativar" />
						<rich:componentControl for="mdlConfirmaDesativarCliente"
							attachTo="lnkDesativar" operation="hide" event="onclick" />
					</h:panelGroup>
				</f:facet>
			<h:form>
				<div style="width: 200px; height: 100px;">
					<p>
						<label> 
							<h:outputText
								value="Deseja realmente desativar o Cliente?" /> 
						</label> 
						<br /> <br />
						<label> 
							<a:commandButton type="submit" rendered="true" reRender="listagem"
								action="#{tclientHome.desativar}"
								value="#{messages['template.envio.gestao.btn.sim']}"
								id="btnSimCancelar"
								onclick="#{rich:component('mdlConfirmaDesativarCliente')}.hide()">								
							</a:commandButton> 
						</label> 
						<label> 
							<a:commandButton
								value="#{messages['template.envio.gestao.btn.nao']}"
								id="btnNaoCancelar"
								onclick="#{rich:component('mdlConfirmaDesativarCliente')}.hide()">
							</a:commandButton> 
						</label>
					</p>
				</div>
			</h:form>
		</rich:modalPanel>

vlw galera!

Criado 11 de agosto de 2011
Ultima resposta 16 de ago. de 2011
Respostas 5
Participantes 3