Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.

Con esta guía vamos a poder crear páginas JSF que pueden ser accedidas sin necesidad de crear una sesión Web en el servidor.

Para poder crear páginas JSF, necesitamos crear un fichero XHTML, que contendrá una etiqueta <f:view> (este elemento, suele estar definido en los ficheros de template de las páginas), para indicar que esa página no necesita sesión web, hay que indicar que la vista es transient:

Bloque de código
languagexml
<f:view transient="true">
    <!-- Contenido de la página -->

</f:view>


Cuando se activa esta configuración, entonces no podemos usar componentes de ámbito sesión, conversación o página. Solo se pueden usar componentes con ámbito evento (Request), stateless o aplicación.

Info

En realidad, los componentes de ámbito sesión, conversación o página están disponibles. Gracias al filtro <web:no-session-request-filter> podrás usarlos, pero no guardaran su contexto/estado entre peticiones. Solo están disponibles para evitar posibles errores en el acceso a los componentes.


Una vez creada la sesión Web, todas las peticiones la usaran, incluidas las indicadas en <web:no-session-request-filter>.



Configuración en Aplicaciones FundeWeb v2

...

donde indicamos las páginas web que no necesitan sesión web para poder visualizarse. Si queremos añadir nuevas páginas, es en este filtro donde debemos añadirlas.

Si la aplicación contiene las páginas:

...

Bloque de código
User-agent: *
Disallow: /
Allow: /contexto_aplicacion/portal.seam
Allow: /contexto_aplicacion/declaracionAccesibilidad.seam
Allow: /contexto_aplicacion/politicaCookies.seam
Allow: /contexto_aplicacion/politicaPrivacidad.seam
Allow: /contexto_aplicacion/index.html/fundeweb/400.seam
Allow: /contexto_aplicacion/fundeweb/401.seam
Allow: /contexto_aplicacion/fundeweb/403.seam
Allow: /contexto_aplicacion/fundeweb/portal404.seam
Allow: /contexto_aplicacion/declaracionAccesibilidadfundeweb/500.seam
Allow: /contexto_aplicacion/politicaCookiesfundeweb/501.seam
Allow: /contexto_aplicacion/fundeweb/politicaPrivacidad503.seam
Crawl-delay: 10


siempre y cuando esas páginas indicadas en el fichero, realmente existan.

...

Info

El valor de contexto_aplicacion, es propio de la aplicación, es decir, que no no solo hay que pegar el contenido del fichero, también hay que modificarlo para que sea correcto para la aplicación.


Advertencia

No es recomendable que el fichero robots.txt contenga la entrada

Allow: /contexto_aplicacion/index.html


porque esta entrada suele redirigir a la autenticación y por lo tanto creara una sesión web que durara como mínimo 30 minutos (configurado en el fichero web.xml).

Lo más recomendable, es que el fichero index.html, redirija a la página portal.xhtml, y que a partir de esta, vayamos a la zona principal de la aplicación.