Hola:
¿Qué versión de JBoss estás usando?
Acabo de probar eso en jboss 4.2.3GA y funciona correctamente cambiándole emptySessionPath a false en los archivos:
/jboss-4.2.3.GA/server/all/deploy/jboss-web.deployer/server.xml
/jboss-4.2.3.GA/server/default/deploy/jboss-web.deployer/server.xml
regenera el sessionId sin problemas.
Código Java:
Ver originalout.println("OLD: " + request.getSession(true).getId());
request.getSession(false).invalidate();
out.println("NEW: " + request.getSession(true).getId());
slds;
Nup_