Error en JBoss 4.2.2.GA / Ajax / Facelets

El error se produce en JBoss 4.2.2.GA (no con Tomcat) al realizar una petición ajax (a4j) y despues intentar ejecutar un commandlink, el problema es que no se ejecuta su action, solamente se recarga la última vista.

Además en el log se puede observar lo siguiente:
...
2010-04-28 03:58:59,953 ERROR [STDERR] 28-abr-2010 3:58:59 com.sun.facelets.impl.DefaultFacelet refresh
INFO: Facelet[/file:/C:/jboss-4.2.2.GA/server/default/tmp/deploy/tmp39285prueba-exp.war/WEB-INF/lib/util-1.2.5.jar!/META-INF/taglibs/tags/menu.xhtml] was modified @ 3:58:59, flushing component applied @ 3:58:59
...

Parece ser que el error se produce cuando el xhtml donde se encuentra el commandlink está ubicado dentro de un archivo jar. Facelets para saber si debe refrescar una vista hace una llamada a FileURLConnection.getLastModified(). La implementación de jBoss tiene un bug por lo cual el facelets falla, por eso todo funciona correctamente cuando se desarrolla en utilizando otros servidores como Tomcat.

Para solucionarlo indicaremos en el web.xml que facelets no refresque las vistas añadiendo el siguiente parámetro:
...
<context-param>
<param-name>facelets.REFRESH_PERIOD</param-name>
<param-value>-1</param-value>
</context-param>
...

Tras esta modificación hay que tener en cuenta que si editamos directamente las vistas en la carpeta de despliegue del servidor este no las refrescará.