c:out
символы HTML Escape так, чтобы можно было избежать сценариев перекрестного сайта.
, если person.name = <script>alert("Yo")</script>
сценарий будет выполняться во втором случае, но не при использовании c:out
Как упомянутый Will Wagner, в старой версии jsp необходимо всегда использовать c:out
для вывода динамического текста.
, Кроме того, с помощью этого синтаксиса:
<c:out value="${person.name}">No name</c:out>
можно отобразить текст "Никакое имя", когда имя является пустым.
c:out
также имеет атрибут для присвоения значения по умолчанию, если значение person.name
, оказывается, является пустым.
Источник: (TLDDoc Сгенерированная Документация)
Более старые версии JSP не поддерживали второй синтаксис.
Вы можете явно включить экранирование Xml-сущностей, используя атрибут escapeXml, значение которого равно true. К вашему сведению, по умолчанию это "истина".