JSP c: установить значение, возвращаемое x: out отображает код специальных символов - PullRequest
1 голос
/ 24 августа 2011

У меня есть документ XML.При синтаксическом анализе этого документа я хочу сделать

<c:set var="fullName">
<x:out select="$character/fstName"/>.<x:out select="$character/famName"/>
</c:set>

, а затем

<c:out value="${fullName}"/>

. Здесь отображается HTML-код специальных символов вместо самого символа (т. Е. Апостроф становится & # 039)

Я прочитал похожую проблему на этой странице " how-can-i-escape-special-html-characters-in-jsp ", но, похоже, это решение для c: out только .Я попробовал это в моем случае, и он, кажется, не работает для x: out

заранее спасибо

Ответы [ 2 ]

3 голосов
/ 24 августа 2011

По умолчанию <x:out> преобразует определенные символы в соответствующие им коды сущностей. Если вы не хотите, чтобы это произошло, попробуйте что-то вроде:

<x:out select="$character/fstName" escapeXml="false"/>
1 голос
/ 26 августа 2011

Итак, это окончательное решение:

<c:set var="fullName">
<x:out select="$character/fstName" escapeXml="false"/>.<x:out select="$character/famName" escapeXml="false"/>
</c:set>

<c:out value="${fullName}"/>

Я думаю, escapeXml = "false" - это то, что нужно использовать постоянно, если вы вкладываете x: out в c: установить , если содержимое ожидаемых узлов не имеет только чисел .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...