Como usar o jstl foreach diretamente sobre os valores de um map

Eu tentei o seguinte que surpreendentemente não funciona, parece que .values não funciona em jstl:

<c:forEach var="r" items="${applicationScope['theMap'].values}">

O mapa é definido assim (e depois salvo no ServletContext):

Map<Integer, CustomObject> theMap = new LinkedHashMap<Integer, CustomObject>();

Como fazer isso funcionar? Na verdade, eu realmente gostaria de evitar modificar o que está dentro do loop foreach.

questionAnswers(3)

yourAnswerToTheQuestion