Link dinamico JSF

Ae galera tudo bem

Estou com o seguinte problema, queria fazer um link dinamico, a partir do valor do combo.

dependendo do que o usuario selecionar no combo redirecionar para uma outra action

Segue o codigo abaixo

    <h:selectOneMenu value="#{parametroControleEntity.id.tipoPeriodo}">
         <f:selectItem itemValue="" itemLabel="" selected="true"/>
         <f:selectItem itemValue="O" itemLabel="Observações Acessória" />
         <f:selectItem itemValue="P" itemLabel="Processo" />
         <f:selectItem itemValue="A" itemLabel="Atividade" />
    </h:selectOneMenu>


<h:graphicImage id="imgLink" value="resource://br/com/resentation/resources/images/search16x16.png">
         <a4j:support id="processoLink" event="onclick" action="#{ACTION DINAMICA AQUI}"/>
</h:graphicImage>

opa…

é bem sussa fazer isso ai…

em um managed bean, cria um atributo e seu get e set:

private HtmlInputHidden page;

ai vc cria um metodo mais ou menos assim:

public void novoItem(){ try{ if(page.getValue().equals("cadastraProc")){ this.modalAbrir = FacesUtil.getProcedureHandler().novaProcedure(); }else if(page.getValue().equals("cadastraProc2")){ this.modalAbrir = FacesUtil.getProcedureHandler().novaProcedure2(); } }catch(Exception ex){ ex.printStackTrace(); } }

esse getProcedureHandler é um metodo de uma classe auxiliar aki, serve para pegar um mbean…assim dessa forma vc deixa a implmeentação correta no mbean correspondente, sem misturar, fica mais ou menos assim:

public static ProcedureHandler getProcedureHandler(){ FacesContext fc = FacesContext.getCurrentInstance(); ELContext elContext = fc.getELContext(); ELResolver resolver = fc.getApplication().getELResolver(); Object element = resolver.getValue(elContext, null, "procedureJob"); return (ProcedureHandler) element; }

ai no seu jsp vc coloca dentro de um form

<h:inputHidden value="cadastraProc" binding="#{topHandler.page}"/>

onde topHandler é o mbean ai que tem o atributo…

e no botao vc chama a action q vc criou…

[edit] nao tinha visto que vc ta usando um combo…no caso em vez de criar um hidden, vc cria uma String msm…eai vc usa para comparar no seu metodo e cair na chamada dinamicamente…ai é só colocar essa String no value do combo…

flw…abraços