2017-01-02 4 views
0

Учитывая следующую структуру:thymleaf карта в пределах стоимости карты (вложенная карта)

Map<String, String> image = new HashMap<>(); 
image.put("thumbnail", "1.png"); 
image.put("medium", "2.png"); 
image.put("large", "3.png"); 

Map<Long, Map<String, String>> imageMap = new HashMap<>(); 
imageMap.put(1L, image); 

В переднем конце как можно получить изображение: 1> эскиз

<image th:src="${imageMap[__${myObjct.id}__]}" height="10px" width="10px"/>

Вышеупомянутое должно возвращать карту с парами значений ключей. То, что я хотел бы, это значение для ключевого «миниатюры».

я бы подумал, что это будет работать: ${imageMap['1']['thumbnail']}

ответ

0

Вы должны, вероятно, использовать звездочки * обозначения здесь:

синтаксис Звездочка вычисляет выражения по отдельным объектам, а чем на целых переменных контекста карта

So *{imageMap['1']['thumbnail']} Должен работать. Попробуй!

+0

О, ошибка! EL1012E: (поз. 13): не может указывать нулевое значение. hmm Пока нет ошибки для '* {imageMap ['1']}' – Ithar

+0

Похоже, что смена символа 'imageMap' с ** Long ** на ** String ** работает. – Ithar

+0

Ах да, это облегчает анализ с помощью тимелеафа;) Молодец! Вы решили это сами. Нулевой указатель - это потому, что нет 'imageMap ['1']' очевидно –

Смежные вопросы