Iterar sobre elementos de List e Map usando a tag JSTL

Se eu tiver um bean backing JSF, retornar um object do tipo ArrayList, eu deveria ser capaz de usar para iterar os elementos na lista. Cada elemento contém um mapa e, embora a questão de como acessar o conteúdo do mapa por meio do JSTL tenha sido respondida aqui , se eu passar uma matriz desses mapas, não consigo encontrar como iterá-los e ainda acessar o conteúdo do mapa usando JSTL . Há documentação que se refere a iteradores simples, mas não àqueles cujos itens são mapas.

Se alguém puder me dar um exemplo simples de como uma lista de java é iterada no JSP, eu ficaria muito agradecido. Marca

Mark, isso já foi respondido em seu tópico anterior . Mas tudo bem, aqui está novamente:

Suponha que ${list} aponte para uma List , então o seguinte

  ${item}

faz basicamente o mesmo que o seguinte em “Java normal”:

 for (Object item : list) { System.out.println(item); } 

Se você tem um List

>

, então o seguinte

   ${entry.key}
${entry.value}

faz basicamente o mesmo que o seguinte em “Java normal”:

 for (Map map : list) { for (Entry entry : map.entrySet()) { System.out.println(entry.getKey()); System.out.println(entry.getValue()); } } 

A key e o value não estão aqui em methods especiais. Eles são, na verdade, methods getter do object Map.Entry (clique no link azul Map.Entry para ver o documento da API). Em EL (Expression Language) você pode usar o . dot operador para acessar os methods getter usando “nome da propriedade” (o nome do método getter sem o prefixo get ), tudo apenas de acordo com a especificação Javabean.

Dito isso, você realmente precisa limpar as “respostas” do tópico anterior, pois elas adicionam ruído à pergunta. Leia também os comentários que eu postei em suas “respostas”.

tente isso

    ${entry.value}