Separar o Dialog da chamada do dialog

Olá pessoal, me deparei com a seguinte situação, preciso desenvolver um sistema para um cliente, porem ele meio que achou melhor que as telas dos inputs e afins estivessem nos dialogs, até ai tudo bem, o problema é que como são muitas telas acabei vendo que tanto a chamada do tipo, MyDialog.show() e o widget=“MyDialog” ou seja, a chamada e o dialog precisam estar na mesma pagina, existe alguma forma de por exemplo, eu criar minha pasta mydialog, com um mydialog.xhtml onde conterá meu dialog e na pagina index.xhtml eu chamar esse MyDialog.show() ?

Até onde sei não tem como

tentei de várias maneiras e procurei mto na internet
quem tentou fazer desse jeito não conseguiu tbm

se vc achar alguma coisa vai dá um toque ai

Opa cara tudo bom? é o seguinte, também achava que não, mais nao tinha logica, o codigo da pagina iria ficar lixoso, até que uma busca mais rapida encontrei isso:

ele diz que tem o msm problema e um usuario informou como faz essa separação, no caso o comando que usa, ainda nao implementei um teste para ver se funciona mesmo, mais a ideia é a seguinte.

suponha que seu dialog está na pagina dialog.xhtml e o nome do seu dialog é widget=“teste”

e vc quer mostrar esse dialog na pagina index.xhtml

na pagina index.xhtml e fazer um <ui:include src=“teste”/> e na pagina em algum local fazer o teste.show(), lembrando que ainda nao teste por falta de tempo, mais no topico, o rapaz disse que deu certo, ou seja, caso vc teste primeiro que eu, por favor de um feedback com o codigo, estarei fazendo o teste depois e postando os resultados aqui mesmo.

eu tentei isso já ele até funciona mas não 100%

teste ai e se vc conseguir, me fale

[quote=maaarkin]Opa cara tudo bom? é o seguinte, também achava que não, mais nao tinha logica, o codigo da pagina iria ficar lixoso, até que uma busca mais rapida encontrei isso:

ele diz que tem o msm problema e um usuario informou como faz essa separação, no caso o comando que usa, ainda nao implementei um teste para ver se funciona mesmo, mais a ideia é a seguinte.

suponha que seu dialog está na pagina dialog.xhtml e o nome do seu dialog é widget=“teste”

e vc quer mostrar esse dialog na pagina index.xhtml

na pagina index.xhtml e fazer um <ui:include src=“teste”/> e na pagina em algum local fazer o teste.show(), lembrando que ainda nao teste por falta de tempo, mais no topico, o rapaz disse que deu certo, ou seja, caso vc teste primeiro que eu, por favor de um feedback com o codigo, estarei fazendo o teste depois e postando os resultados aqui mesmo.[/quote]

como assim, nao 100% ? poderia ser mais especifico?

eu não me lembro

porque foi a 3 meses atras
ele chega a chama o dialog

tenho que tenta fazer novamente, para ver o erro

mas caso vc consiga só me fale, que deu certo

para que eu possa tentar novamente aqui
pq desse jeito tudo no mesmo arquivo é ruim

Opa caro amigo, bem, primeiramente obrigado por estar respondendo, em segundo trago boas noticias, testei aqui e está funcionando perfeitamente.

irei disponibilizar o codigo aqui tanto da pagina quanto do dialog para que vc possa ver como funciona.

obs: está fazendo exatamente o que faz quando eu coloco na msma pagina de chamada xD.

minha pagina dialog.xhtml na pasta orgao


<?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:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">
<body>
	
	<p:dialog id="MyDialog" resizable="true" widgetVar="MyDialog" modal="true" appendToBody="true" header="Informações do Orgão" 
		dynamic="true" > 

			aqui conteudo

		</p:dialog>
	
</body>
</html>

aqui minha pagina index.xhtml onde eu chamo o dialog


<?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:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">
<head>

</head>
<body>
	<ui:composition template="/template/templateSistema.xhtml">
		<ui:define name="content">
			<ui:include src="orgao/dialog.xhtml" /> aqui se encontra a chamada da pagina do dialog.		
		
			<h:form id="addOrgao">
			<p:stack icon="/resources/imagens/stack.png">
				<p:menuitem value="Aperture" icon="/images/stack/aperture.png" url="#" />
				<p:menuitem value="Photoshop" icon="/images/stack/photoshop.png" url="#"/>
				<p:menuitem value="Coda" icon="/images/stack/coda.png" url="#"/>
				<p:menuitem value="Safari" icon="/resources/imagens/safari.png"url="#" />
				<p:menuitem value="Finder" icon="/resources/imagens/safari.png" onclick="MyDialog.show()" />
			</p:stack>
			</h:form>
							
		</ui:define>
		
	</ui:composition>	
</body>
</html>

funcionou 100%

se sim

qual versão vc esta usando do primefaces?

[quote=maaarkin]
minha pagina dialog.xhtml na pasta orgao


<?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:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">
<body>
	
	<p:dialog id="MyDialog" resizable="true" widgetVar="MyDialog" modal="true" appendToBody="true" header="Informações do Orgão" 
		dynamic="true" > 

			aqui conteudo

		</p:dialog>
	
</body>
</html>

aqui minha pagina index.xhtml onde eu chamo o dialog

[code]

<?xml version="1.0" encoding="ISO-8859-1" ?> aqui se encontra a chamada da pagina do dialog.
		<h:form id="addOrgao">
		<p:stack icon="/resources/imagens/stack.png">
			<p:menuitem value="Aperture" icon="/images/stack/aperture.png" url="#" />
			<p:menuitem value="Photoshop" icon="/images/stack/photoshop.png" url="#"/>
			<p:menuitem value="Coda" icon="/images/stack/coda.png" url="#"/>
			<p:menuitem value="Safari" icon="/resources/imagens/safari.png"url="#" />
			<p:menuitem value="Finder" icon="/resources/imagens/safari.png" onclick="MyDialog.show()" />
		</p:stack>
		</h:form>
						
	</ui:define>
	
</ui:composition>	

[/code][/quote]

rapaz, uso a 3.3.1, mais isso não eh algo do qual seja problema do prime nao, eh responsabilidade do facelets essa interligação da paginas.

aqui está funcionando corretamente, e até salvando e listando com o dialog aberto ele está filé.

valeu…

depois vou testar
e te informo

Att

[quote=maaarkin]rapaz, uso a 3.3.1, mais isso não eh algo do qual seja problema do prime nao, eh responsabilidade do facelets essa interligação da paginas.

aqui está funcionando corretamente, e até salvando e listando com o dialog aberto ele está filé.[/quote]