Navegação entre páginas - JSF/Facelets

2 respostas
vinicius.me

Boa noite GUJ,

Estou precisando mt da ajuda de voces.
Jah abri um topico antes, mas o problema que estava tendo, depois de verificar acho que o problema nao seja onde eu pensava.

Acho que o problema esta na navegacao entre as paginas segue o codigo

Controller de produto

public String detalhe() {
        Map requestParameter = null;
        String id_produto = (String) requestParameter.get("id_produto");

        InterfaceProdutoDAO idao = new ProdutoDAO();
        this.produto = idao.produtoId(id_produto);

        return "detalhar_produto";
    } //fim do metodo detalhe

Paginas FACELETS

listar.xhtml -> tras a lista de produtos de uma determinada categoria, ateh aqui ok…esta funcionando

<h:form id="form_lista_produto">
                    <ul>
                        <ui:repeat var="prod" value="#{subcat.produtos}">
                            <li><h:commandLink id="prod_nome" value="#{prod.nome}"
                                           action="#{produto.detalhe}">
                                    <f:param name="id_produto" value="#{prod.id}" />
                                </h:commandLink>
                            </li>
                        </ui:repeat>
                    </ul>
                </h:form>

o problemas esta aqui, nao consigo chegar a essa pagina, apos clicar no link do produto na pagna listar.xhtml ele nao passa para a pagina detalhar.xhtml, acredito que ele volte para a listar.xhtml : /

<h:form id="form_detalhe_produto">
                    okokoko
                    <h:outputText value="Olá! Voce esta na pagina de detalhes." /><br />
                    <h:outputText value="#{produto.produto.id}" /><br />
                    <h:outputText value="#{produto.produto}" />
                </h:form>

minhas regras de navegacao, amabas as paginas detalhar.xhtml e listar.xhtml estao no diretorio /xhtml/produto

<navigation-rule>
        <from-view-id>/xhtml/*</from-view-id>
        <navigation-case>
            <from-outcome>home</from-outcome>
            <to-view-id>/xhtml/home.xhtml</to-view-id>
        </navigation-case>
        <navigation-case>
            <from-outcome>listar_produto</from-outcome>
            <to-view-id>/xhtml/produto/listar.xhtml</to-view-id>
        </navigation-case>
        <navigation-case>
            <from-action>#{produto.detalhe}</from-action>
            <from-outcome>detalhar_produto</from-outcome>
            <to-view-id>/xhtml/produto/detalhar.xhtml</to-view-id>
        </navigation-case>
    </navigation-rule>

se alguem puder ajudar

vlw flw

2 Respostas

J

Sei lá mas tenta trocar o commandLink por commandButton…

Marcio_Nogueira

Digamos que ele não queira utilizar um commandbutton, mas um commandlink. Qual seria a solução mais rápida e prática para resolver o problema?

Criado 14 de agosto de 2009
Ultima resposta 24 de mar. de 2011
Respostas 2
Participantes 3