En JEE 6 con Seam 3 tenemos el ConversationScope (como SessionScope pero delimitado por la aplicación >>)

Éste se propaga automágicamente por cualquier request o redirect dento de JSF por medio de un parámetro reservado cid, el cual indica que se está dentro de la misma conversación.

<!--por ejemplo con JSF 2-->
<h:form>
<h:commandButton action="#{bean.metodo}"/>
</h:form>

 

/**
*  y en el bean
*/
public String metodo(){
return "pagina.xhtml"; //se envía implícitamente el cid
}

Sin embargo,  si reescribimos nuestras URLs con PrettyFaces, esto deja de funcionar

public String metodo(){
return "pretty:pagina"; //pretty faces.
}

En los foros de Ocpsof dicen que se está trabajando en ello >>
Pero pude reproducir el bug con PrettyFaces 3.3.2

Ni siquiera sirve como workaround enviar explícitamente el parámetro

<h:form>
<h:commandButton action="#{bean.metodo}">
<f:param name="cid" value="#{javax.enterprise.context.conversation.id}"/>
<h:commandButton>
</h:form>

Pero lo que sí funciona es que el retorno del método sea el nombre de la página << (a los JSF 2), con esto tenemos el cid y PrettyFaces realiza la sobrescritura luego de todas formas.
http://localhost:8080/App/pagina?cid=24

El sitio utiliza cookies, para iniciar sesión o para cotizar los servicios. No usamos cookies de terceros.    Leer más
Privacidad