Phase Listener não funciona

Oi pessoal, bem eu tenho uma aplicação que utiliza JSF e também estou usando RichFaces nessa aplicação, fiz uma classe que implementa phaseListener e implementei o método afterPhase(PhaseEvent event), segue o código da classe abaixo:

package br.com.SkyPT.model.Segurança;

import javax.faces.application.FacesMessage;
import javax.faces.application.NavigationHandler;
import javax.faces.context.FacesContext;
import javax.faces.event.PhaseEvent;
import javax.faces.event.PhaseId;
import javax.faces.event.PhaseListener;
import javax.servlet.http.HttpSession;

import br.com.SkyPT.model.beans.UsuarioBean;

public class AutorizacaoListener implements PhaseListener {

	public void afterPhase(PhaseEvent event) {
		System.out.println("entrei after");
		FacesContext facesContext = event.getFacesContext(); 
	
		
		HttpSession session = (HttpSession) FacesContext.getCurrentInstance()
				.getExternalContext().getSession(false);
		
		try{
			if((UsuarioBean)session.getAttribute("UsuarioConectado")!=null){
				return;
			}else{
				FacesContext.getCurrentInstance().addMessage("loginBloqueado",
    					new FacesMessage("ERRO: Você não está logado no shop!"));
				NavigationHandler nh = facesContext.getApplication().getNavigationHandler();   
				nh.handleNavigation(facesContext, null, "loginUserFalha");
			}
		}catch(Exception e){
			FacesContext.getCurrentInstance().addMessage("loginBloqueado",
					new FacesMessage("ERRO: Você não está logado no shop!"));
			NavigationHandler nh = facesContext.getApplication().getNavigationHandler();   
			nh.handleNavigation(facesContext, null, "loginUserFalha"); 
		}
		

	}

	public void beforePhase(PhaseEvent arg0) {
		System.out.println("entrei before");
	}

	public PhaseId getPhaseId() {
		return null;
	}

}

e no meu faces-config.xml declarei esse listener:

<lifecycle>
         <phase-listener>br.com.SkyPT.model.Segurança.AutorizacaoListener</phase-listener>
    </lifecycle>

porém ele não passa nesse listener, ele executa um evento, submita um form e não passa pelo método, alguem pode me ajudar, obrigado.

No mpetodo getPhaseId você deve retorna a Phase que vc quer interceptar, exemplo:

  public PhaseId getPhaseId() {  
         return PhaseId.RESTORE_VIEW;  
     }  

nesse caso o seu PhaseListener escutará quando a Phase for RESTORE_VIEW.
não retorne null nesse method

e outra dica, não use letras maiusculas em pacote, não segue a convenção da sun.

Boa sorte

moisesba muito obrigado!
eu acabei lendo sem atenção e não vi essa parte, obrigado pela ajuda
Abraço!

mais uma dica, n use caracteres especiais no java, principalmente nos pacotes, como o cedilha Ç e outros …