¿Cómo conservo el fragmento de uri en un safari al redirigirlo?

Mi aplicación gwt / gae utiliza actividades y lugares. Para crear procesos asíncronos (como restablecer una contraseña o verificar la propiedad de una dirección de correo electrónico), utilizo un patrón donde el estado de una actividad puede ser tokenizado y almacenado en el almacén de datos, luego recuperarse y reanudarse más tarde. Para recuperar el token de estado, tengo un lugar que toma un ID de token aumentado como un argumento, lo recupera del almacén de datos y luego navega al lugar apropiado según sea necesario para continuar con el proceso. Esto me permite crear un enlace a un estado específico de mi aplicación que se puede distribuir por correo electrónico. por ejemplo:

http://mydomain.com/#signup:anJlbmZyb0BldGhvc2VkZ2UuY29tfDEzNzQxOTIxNjU3NjQ=

En este caso, el enlace anterior se enviaría a la dirección de correo electrónico utilizada durante el registro y la aplicación reanudará la actividad de registro identificada por el argumento hash.

Todo funcionó bien hasta hace poco, cuando agregué un certificado SSL y realicé https para todas las solicitudes agregando el siguiente código a mi web.xml:

<security-constraint>
    <web-resource-collection>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

Esta restricción impone https a través de (creo) un redireccionamiento 301 al puerto 443. Funciona como un encanto en Chrome, Firefox e IE ... sin embargo, safari parece dejar caer el fragmento de URL al redirigir ... Creo que puedes ver mi problema ! ¿Cómo evito que safari deje caer el fragmento de url?

Actualización 8.1.13

Después de una investigación exhaustiva, creo que he identificado la causa raíz, pero todavía tengo que encontrar una buena solución. Se proporcionó una descripción detallada del problema en la nota de w3cManejo de identificadores de fragmentos en URLs redirigidas (1999)

Básicamente, la especificación de http no estaba clara en cuanto al manejo de los fragmentos de url durante las redirecciones 3xx; y safari optó por soltar el fragmento cuando se redirige. Vea el siguiente bug de bugzilla:

https://bugs.webkit.org/show_bug.cgi?id=24175

El comportamiento deseado se describe por los problemas del agente de usuario común de w3c:

http://www.w3.org/TR/cuap#uri

Entonces, a la luz de todo esto, creo que se trata de un problema de safari (webkit). Lo que no entiendo es por qué no se ven afectados otros navegadores de kits web. ¿Hay una solución conocida?

Respuestas a la pregunta(1)

Su respuesta a la pregunta