SetLocale nie działało w witrynie jsp do formatowania waluty w języku niemieckim

Jestem pomylony z libs tagiem jstl:

Chcę sformatować numer do waluty w stylu niemieckim ... ale wszystko, co próbowałem, nie działało ...

Znalazłem następujący przykład, ale dane wyjściowe są takie same -.-

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core"
      prefix="c" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt"
      prefix="fmt" %>

<html>
<head>
    <title>format number</title>
</head>
<body>
    <c:set var="val" value="40.52" />
    <p> Currency in USA
    <fmt:setLocale value="en_US"/>
    <fmt:formatNumber value="${val}"
              type="currency" />
    </p>

    <p>Currency in Germany
    <fmt:setLocale value="de_DE"/>
    <fmt:formatNumber value="${val}"
              type="currency"/>
    </p>
</body>
</html>

I to jest wyjście:

Currency in USA $40.52

Currency in Germany $40.52

co tam jest nie tak?

dzięki za pomoc.

questionAnswers(2)

yourAnswerToTheQuestion