Como fazer para que continue passando o parâmetro mas não apareça o “?idViewParam=1” na URL ou o parâmetro, no caso o 1, seja criptografado ou não permitir que o usuário informe manualmente na URL o parâmetro?
Uma ideia para isso seria você criar uma campo usuario.token
Criptografe seu id no lado servidor e guarde no token.
enão no client ficaria assim: <f:param name="idViewParam" value="#{usuario.token}"/>
Ao enviar novamente para o servidor você descriptografa.
Pode ser criptografia ou hash.
Talvez criptografia seja melhor, uma que seja dinâmica e mude o token a cada request mesmo sendo para o mesmo id.
Y
Yawehrafa
Existe alguma forma de passar o parâmetro sem aparecer na URL?
D
Dbq_Batista
Existe, você envia via post.
Procure na documentação do JSF como enviar via post.
Y
Yawehrafa
Amigão, estive pesquisando, mas não consegui fazer.
Tenho dois managed bean, um é para pesquisar e outro para realizar a manutenção do usuário (cadastro e edição).
Quando estou na pesquisa, tem o botão de edição. Quando clico, direciono para o xhtml de cadastro, gostaria de passar o objeto usuário, ou somente o id, para o managed bean de cadastro.
Hoje está funcionando certo passando o parâmetro pela URL, mas gostaria que não aparecesse mais na URL.
Obrigado.
A
alisonjf
@Yawehrafa, não é possível fazer um redirect utilizando POST, o que da pra fazer é simular esse cenário.
Redireciona seu bean pra uma página temporária, com todos os valores em inputs do tipo hidden.
Na página vc teria mais ou menos isso: