Problema com fuso horário em JSTL

Oi pessoal, gostaria de saber se alguém pode me ajudar com essa: ao informar o timezone, a data aparece errada. Observei que antes disso, ela estava correta. Se eu coloco o timezone de outro pais, funciona corretamente.

<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<body>
<jsp:useBean id="data" class="java.util.Date"></jsp:useBean>

Data e hora locais:<br/>
Data: <fmt:formatDate value="${data}" dateStyle="full"/><br/>
Hora: <fmt:formatDate value="${data}" dateStyle="full" type="time"/><br>
<fmt:setTimeZone value="pt-BR"/>
Data e hora locais:<br/>
Data: <fmt:formatDate value="${data}" dateStyle="full"/><br/>
Hora: <fmt:formatDate value="${data}" dateStyle="full" type="time"/><br>

</body>
</html>

Com é a minha primeira postagem neste forum, espero que o texto apareca corretamente.
[]'s