Capturar tempo de vida do Cookie/Servlets

Estou tentando capturar o tempo de vida que meu Cookie possui, contudo apesar de eu setar o tempo de vida dele em um valor, a resposta é sempre: -1, ou seja, até que o navegador seja fechado. Segue duas classes, uma que evia o Cookie e a outra que recebe.
Não entendi muito bem o JSESSIONID, sempre que houver uma sessão(Cookie ou encodeURL) será criado um JSESSIONID? Ele é um Cookie que carrega o que? Informações sobre a Sessão?

CookieEnvia

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class CookieEnvia extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String nome = request.getParameter("nome");

		HttpSession sessao = request.getSession(); // Obtendo uma sessao
		sessao.setMaxInactiveInterval(12000); // Tempo que sessao levara para expirar
		
		PrintWriter out = response.getWriter();

		Cookie cookie = new Cookie("username", nome); // Criando um atributo nome/valor para um objeto Cookie
		cookie.setMaxAge(12000); // Definindo quanto tempo o Cookie será armazenado no Cliente em segundos
		out.println("Tempo para expirar: " + cookie.getMaxAge());
		response.addCookie(cookie); // Enviando o Cookie para o Cliente encapsulado no objeto Response

		out.println("Testanto evio de parametros via get");
		out.println("nome: " + nome);
    }
}

CookieRecebe

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class CookieRecebe extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		PrintWriter out = response.getWriter();
		out.println("recebendo um cookie..");

		Cookie[] cookies = request.getCookies();

		for (Cookie var : cookies) {
			if (var.getName().equals("username")) {
				out.println("bem vindo: " + var.getValue());
				out.println("Tempo para expirar: " + var.getMaxAge());
			}
		}
		HttpSession sessao = request.getSession();
		out.println("Tempo de duracao da sessao: " + sessao.getMaxInactiveInterval());
    }
}

Pessoal, estudei mais um pouco sobre os cookies e entendi o funcionamento do jsessionid, contudo ainda não consegui entender pq não exibido o tempo de vida do cookie que eu criei e sim do jsessionid, se alguém puder esclarecer, agradeço :slight_smile:

Procurei em vários lugares e não encontrei a resposta, ninguém sabe?