Menu não aparece - JSF + Primefaces - RESOLVIDO

3 respostas
D

Boa tarde pessoa, tudo em ordem?
Pessoa, venho mais uma vez pedir uma ajuda a vcs.
Nesse projeto inicial com JSF me deparei com um problema
Criei minha tela de login(por enquanto sem acesso ao BD), coloquei um retorno para um home onde existe um menu.
A tela chama e fica em brando, coloquei um texto acima do menu para um teste e esse texto aparece somente o menu que não.
Senha codigo abaixo

xhtml login
<?xml version="1.0" encoding="UTF-8" ?>
<!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:p="http://primefaces.org/ui">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert title here</title>
</h:head>
<h:body onload="dlg.show()"> 
  
<p:growl id="growl" showDetail="true" life="3000" />  
  
<p:dialog id="dialog" header="Login" widgetVar="dlg">  
    <h:form>  
  
        <h:panelGrid columns="2" cellpadding="5">  
            <h:outputLabel for="usuario" value="Usuario:" />  
            <p:inputText value="#{loginBean.usuario}"   
                    id="usuario" required="true" label="usuario" />  
              
            <h:outputLabel for="password" value="Senha:" />  
            <h:inputSecret value="#{loginBean.password}"   
                    id="password" required="true" label="password" />  
              
            <f:facet name="footer">  
                <p:commandButton id="loginButton" value="Login" update=":growl"   
                    actionListener="#{loginBean.login}"   
                    oncomplete="handleLoginRequest(xhr, status, args)"/>  
            </f:facet>  
        </h:panelGrid>  
          
    </h:form>  
</p:dialog>  
  
<script type="text/javascript">  
    function handleLoginRequest(xhr, status, args) {  
        if(args.validationFailed || !args.loggedIn) {  
            jQuery('#dialog').effect("shake", { times:3 }, 100);  
        } else {  
            dlg.hide();  
            jQuery('#loginLink').fadeOut();  
        }  
    }  
</script> 
</h:body>
</html>
Codigo login
package ManagedBeans;

import java.io.IOException;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import org.primefaces.context.RequestContext;


@ManagedBean(name="loginBean")
@ViewScoped
public class LoginBean {  
	  
    private String usuario;  
      
    private String password;  
      
    public String getUsuario() {  
        return usuario;  
    }  
  
    public void setUsuario(String usuario) {  
        this.usuario = usuario;  
    }  
  
    public String getPassword() {  
        return password;  
    }  
  
    public void setPassword(String password) {  
        this.password = password;  
    }  
  
    public void login(ActionEvent actionEvent) {  
        RequestContext context = RequestContext.getCurrentInstance();  
        FacesMessage msg = null;  
        boolean loggedIn = false;  
          
        if(usuario != null  && usuario.equals("admin") && password != null  && password.equals("admin")) {  
            loggedIn = true;  
            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Bem Vindo", usuario); 
            try {
				FacesContext.getCurrentInstance().getExternalContext().redirect("/pages/home.xhtml");
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} 
        } else {  
            loggedIn = false;  
            msg = new FacesMessage(FacesMessage.SEVERITY_WARN, "Atenção", "Login Invalido");  
        }  
          
        FacesContext.getCurrentInstance().addMessage(null, msg);  
        context.addCallbackParam("loggedIn", loggedIn);  
    }  
}
codigo onde esta o menu
<?xml version="1.0" encoding="UTF-8" ?>
<!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:p="http://primefaces.org/ui">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Insert title here</title>
</head>
<body>
<h:form>  
  <h3>Menu</h3> 
<p:menubar>  
        <p:submenu label="File" icon="ui-icon-document">  
            <p:submenu label="New" icon="ui-icon-contact">  
                <p:menuitem value="Project" url="#" />  
                <p:menuitem value="Other" url="#" />  
            </p:submenu>  
            <p:menuitem value="Open" url="#" />  
            <p:separator />  
            <p:menuitem value="Quit" url="#" />  
        </p:submenu>  
  
        <p:submenu label="Edit" icon="ui-icon-pencil">  
            <p:menuitem value="Undo" url="#" icon="ui-icon-arrowreturnthick-1-w" />  
            <p:menuitem value="Redo" url="#" icon="ui-icon-arrowreturnthick-1-e" />  
        </p:submenu>  
  
        <p:submenu label="Help" icon="ui-icon-help">  
            <p:menuitem value="Contents" url="#" />  
            <p:submenu label="Search" icon="ui-icon-search">  
                <p:submenu label="Text">  
                    <p:menuitem value="Workspace" url="#" />  
                </p:submenu>  
                <p:menuitem value="File" url="#" />  
            </p:submenu>  
        </p:submenu>  
  
        <p:submenu label="Actions" icon="ui-icon-gear">  
            <p:submenu label="Ajax" icon="ui-icon-refresh">  
                <p:menuitem value="Save" actionListener="#{menuBean.save}" icon="ui-icon-disk" update="messages"/>  
                <p:menuitem value="Update" actionListener="#{menuBean.update}" icon="ui-icon-arrowrefresh-1-w" update="messages"/>  
            </p:submenu>  
            <p:submenu label="Non-Ajax" icon="ui-icon-newwin">  
                <p:menuitem value="Delete" actionListener="#{menuBean.delete}" icon="ui-icon-close" update="messages" ajax="false"/>  
            </p:submenu>  
        </p:submenu>  
  
        <p:menuitem value="Quit" url="http://www.primefaces.org" icon="ui-icon-close" />  
    </p:menubar>  
  
</h:form> 
</body>
</html>
Tenho mais algumas duvidas mas vou postando aos poucos para centralizar cada uma =) Mais uma vez muito obrigado pessoal.

3 Respostas

L

Posta seu web.xml aqui

D

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>crednet</display-name> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.jsf</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>/WebContent/index.xhtml</welcome-file> </welcome-file-list> </web-app>

Mal mexi com ele … não mexi muito nele … provavelmente esta faltando algo, pois é meu primeiro projeto em jsf e estou estudando e montando ao mesmo tempo.
Obrigado amigo.

D

Boa tarde pessoal, problema resolvido.
No meu caso eu não vou utilizar o backend do menu e como não implementei ele o problema ocorria.
Foi um erro bem iniciante mas não havia me atentado a isso.
Me desculpem e muito obrigado.

[]s

Criado 20 de outubro de 2012
Ultima resposta 20 de out. de 2012
Respostas 3
Participantes 2