Сущности XML не отображаются - PullRequest
0 голосов
/ 13 декабря 2018

Использование h:outputText Я хочу отобразить стрелку влево ← используя ←.Но он просто не отображается на странице (даже в выводе элемента inspect).Что я сделал не так?

<h:outputText value="Overtime (Remaining &larr; New)" />

enter image description here

1 Ответ

0 голосов
/ 14 декабря 2018

Корневая проблема в том, что &larr; это , а не объект XML.Это HTML-сущность.

Facelets основаны на XML, и в XML есть только 5 предопределенных сущностей: &amp;, &quot;, &apos;, &lt;, &gt;.Все остальные, о которых вы, возможно, видели или слышали, - это HTML-сущности, которые не поддерживаются в XML.

Исторически HTML-сущности в любом случае использовались для поддержки «специальных» символов при использовании кодировок более низкого качества, таких как ISO-XXX, вместоUTF-XXX.Но после появления и всемирной поддержки кодировки символов UTF-XXX нам больше не нужны эти HTML-сущности.

XML поддерживает UTF-8, поэтому просто напечатайте прямо сейчас.

<h:outputText value="Overtime (Remaining ← New)" />

Или даже без целого <h:outputText>, поскольку вам на самом деле здесь ничего не нужно конвертировать.

Overtime (Remaining ← New)

См. Также:

...