JSF Parâmetros nulos usando ParamView e RequestScope no ManagedBean [RESOLVIDO]

Olá pessoal, estou criando um pagina em JSF que recebe parâmetros via GET, consigo exibi-los usando a tag OutputLabel. Porem no ManagedBean da pagina as variáveis que recebem os valores estão nulas. Neste caso qual seria a melhor estratégia ?

Chamada do método do redirect.

public void pesquisar(){
        FacesContext context = FacesContext.getCurrentInstance();        
        try {
            context.getExternalContext().redirect(context.getExternalContext().getRequestContextPath() + "/pesquisa/" + key + "/1");
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }
}

Configuração da URL no PrettyFaces.

<url-mapping id="urlpesquisa" >  
     <pattern value="/pesquisa/#{key}/#{pagina}" />  
     <view-id value="/faces/pesquisa.xhtml" />
</url-mapping>

Pagina de pesquisa.

<!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:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core">
<h:body>
    <f:view>
        <f:metadata>
            <f:viewParam name="key" value="#{pesquisaBean.key}" ></f:viewParam>
            <f:viewParam name="pagina" value="#{pesquisaBean.pagina}"></f:viewParam>                        
        </f:metadata>
    </f:view>
</h:body>
<ui:composition template="/artVenture_template.xhtml">
    <ui:define name="content">                
        <h:outputLabel value="#{pesquisaBean.key}"></h:outputLabel>
        <h:outputLabel value="#{pesquisaBean.pagina}"></h:outputLabel>            
    </ui:define>
</ui:composition>
</html>

ManagedBean da pagina de pesquisa.

package br.com.ngi.artventure.pesquisa;

import java.io.Serializable;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

@ManagedBean
@RequestScoped
public class PesquisaBean implements Serializable {
    private static final long serialVersionUID = 1L;
    private String key;    
    private String pagina;

    @PostConstruct
    public void init(){
        showValues();
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String getPagina(){
        return this.pagina;
    }

    public void setPagina(String pagina){
        this.pagina = pagina;
    }

    public void showValues(){
        System.out.println("key = " + key);
        System.out.println("pagina = " + pagina);
    }
}

Pessoal consegui resolver. Assim eu recupero os valores no meu bean.

public void showValues(){
    FacesContext fc = FacesContext.getCurrentInstance();
    Map<String,String> params = fc.getExternalContext().getRequestParameterMap();                
    System.out.println("key param = " + params.get("key"));
    System.out.println("pagina param = " + params.get("pagina"));
}

Para mim ainda não é trivial mas funcionou.