Dialog Primefaces modal com problemas

6 respostas
F

Estou tentando fazer um dialog modal com primefaces mas estou tendo problemas ao chamar o dialog toda a aplicação fica modal até o proprio dialog, o que estou fazendo de errado, segue o codigo fonte...

<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:p="http://primefaces.prime.com.tr/ui"
      xmlns:sec="http://www.springframework.org/security/facelets/tags">

    <h:head>
        <title>Intesis - Mensageria NFe</title>
        <link href="../style/jquery-ui-1.8.16.custom.css" type="text/css" rel="stylesheet"  />
    </h:head>
    <h:body>

        <p:growl id="growlMessage" showDetail="true" />

        <p:layout fullPage="true">

            <p:layoutUnit position="top" height="75" closable="false">

                <p:toolbar>
                    <p:toolbarGroup align="right">
                        <h:form prependId="false">
                            <h:outputText value="#{nFeController.message}"/>
                            <h:graphicImage url="../img/cadeado.png" style="border: 0px"/>

                            <p:commandLink>
                                <h:outputText value="Alterar Senha"/>
                            </p:commandLink>

                            <h:graphicImage url="../img/usuario.png" style="border: 0px"/>
                            <h:outputText value=" #{loginController.usuarioLogado}  [ "/>
                            <p:commandLink action="#{loginController.logout}" value="Sair"/>
                            <h:outputText value=" ]"/>
                        </h:form>
                    </p:toolbarGroup>
                </p:toolbar>

            </p:layoutUnit>

            <p:layoutUnit position="center" height="10" closable="false">

                <p:toolbar>
                    <p:toolbarGroup align="left">
                        <h:form prependId="false">
                            <p:menubar autoSubmenuDisplay="true">
                                <p:submenu label="NFe">
                                    <p:menuitem value="Consulta NFe"/>
                                </p:submenu>
                            </p:menubar>
                        </h:form>
                    </p:toolbarGroup>
                </p:toolbar>


                <h:form prependId="false">
                    <p:dataTable var="nfe" value="#{nFeController.nfeList}" paginatorPosition="bottom"
                                 emptyMessage="Nenhuma nota encontrada!" paginator="true" rows="10">

                        <p:column headerText="Status">
                            <h:graphicImage url="#{nfe.imgStatus}"/>
                            <h:outputText value="#{nfe.status}"/>
                        </p:column>

                        <p:column sortBy="#{nfe.NDoc}" headerText="N.Doc">
                            <h:outputText value="#{nfe.NDoc}"/>
                        </p:column>

                        <p:column headerText="Data Emissão">
                            <h:outputText value="#{nfe.dataEmissao}">
                                <f:convertDateTime pattern="dd/MM/yyyy"/>
                            </h:outputText>

                        </p:column>

                        <p:column headerText="E/S">
                            <h:outputText value="#{nfe.tipoNF}"/>
                        </p:column>

                        <p:column headerText="Valor Documento">
                            <h:outputText value="#{nfe.valor}"/>
                        </p:column>

                        <p:column sortBy="#{nfe.destinatario}" headerText="Destinatário">
                            <h:outputText value="#{nfe.destinatario}"/>

                        </p:column>

                        <p:column headerText="UF">
                            <h:outputText value="#{nfe.uf}"/>
                        </p:column>

                        <p:column headerText="Data Aprovação">
                            <h:outputText value="#{nfe.dataAprovacao}"/>
                        </p:column>

                        <p:column>
                            <p:commandLink id="cmdImprimeDanfe">
                                <h:graphicImage url="../img/impressora.png" style="border: 0px"/>
                            </p:commandLink>
                        </p:column>  

                        <p:column>
                            <p:commandLink id="cmdEnviaEmail" onclick="dlgEmail.show()">
                                <h:graphicImage url="../img/email.png" style="border: 0px"/>
                            </p:commandLink>
                        </p:column>   

                    </p:dataTable>
                </h:form>

                <h:form>
                    <h:outputLink value="javascript:void(0)" onclick="dlgEmail.show()">Show the Picture of the Day</h:outputLink>
                </h:form>

                    <p:dialog id="dlgEmail" widgetVar="dlgEmail" header="Enviar email"
                              resizable="false" modal="true">
                        <h:form prependId="false">
                            <h:panelGrid columns="2">
                                <h:selectOneMenu id="cbEnvioEmail">
                                    <f:selectItem itemLabel="E-mail Cadastrado" itemValue="1"/>
                                    <f:selectItem itemLabel="Inserir E-mail" itemValue="2"/>
                                </h:selectOneMenu>

                                <p:commandButton value="Enviar" />
                                <p:commandButton value="Cancelar" />

                            </h:panelGrid>
                        </h:form>
                    </p:dialog>    

            </p:layoutUnit>
        </p:layout>

    </h:body>
</html>

6 Respostas

A

qual o problema que está acontecendo?

F

tudo fica modal ate a o dialog que quero que abra na frente, ele abre mas fica modal tambem, nao consigo fazer mais nada no navegador

R

boa tarde, o problema em questão é causado pelas css geradas pelo “p:layout”, se colocar seu dialog fora do mesmo vai obter sucesso!!

F

ta ok amanha pela manha vou fazer esta alteração, aproveitando o topico, é possivel retirar o cabecalho p layoutUnit? deixar apenas o espaço reservado para adicionar componentes?

R

bem não sei se compreendi bem sua pergunta, mas acredito que usando modelo de template vc consegue o esperado, neste código vc vai ter o

<ui:insert name="cabecalho"></ui:insert>

e nos arquivos que usar o template vc implementa o cabeçalho dentro da tag

<ui:define name="adicionais"> //componentes aqui </ui:define>

F

agora funcionou certo retirando o p:layout realmente tem algum bug

Criado 13 de outubro de 2011
Ultima resposta 14 de out. de 2011
Respostas 6
Participantes 3