Set-Cookie en el encabezado HTTP se ignora con AngularJS

Estoy trabajando en una aplicación basada en AngularJS en el lado del cliente y en Java para mi API (Tomcat + Jersey para WS) en el lado del servidor.

Algunas rutas de mi API están restringidas; si el usuario no tiene una sesión, el estado de respuesta es 401. En el lado del cliente, se intercepta el estado 401 http para redirigir al usuario a la página de inicio de sesión.

Una vez que el usuario está autenticado, creo una sesión en el lado del servidor

httpRequest.getSession(true);
y la respuesta enviada al cliente tiene la instrucción Set-cookie en su encabezado:

Set-Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXX; Domain=localhost; Path=/api/; HttpOnly

El problema es que la cookie nunca se coloca en el lado del cliente. Cuando inspecciono la cookie para el dominio localhost, está vacío, por lo que las siguientes solicitudes no tienen esta cookie en su encabezado y el lado del cliente aún no pudo acceder a la ruta restringida de mi API.

El cliente y el servidor están en el mismo dominio pero no tienen la misma ruta y el mismo número de puerto:

Cliente:http://localhost:8000/app/index.html

Servidor:http://localhost:8080/api/restricted/

Información adicional: CORS está habilitado en ambos lados:

"Access-Control-Allow-Methods", "GET, POST, OPTIONS"
"Access-Control-Allow-Origin", "*"
"Access-Control-Allow-Credentials", true

¿Alguna idea para hacer que el Set-cookie funcione correctamente? ¿Es un problema relacionado con AngularJS?

Respuestas a la pregunta(6)

Su respuesta a la pregunta