2015-04-14 2 views
1

Я пытаюсь создать сообщение проверки Struts2 с некоторым кодом HTML внутри.Struts 2 Сообщение с кодом HTML внутри

Например:

<field-validator type="regex"> 
    <param name="expression"> 
     <![CDATA[^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(\.[0-9]{1,2})?$]]> 
    </param> 
    <message> 
     <b>${Price}</b> field for <b>${fundDescription}</b> and 
     <b>${currencyDescription}</b> must be a number and in the correct format 
    </message> 
</field-validator> 

Я знаю, что <b>${Price}</b> и &lt;b&gt;${Price}&lt;/b&gt; не работают. Есть ли способ сделать это?

Я не включаю весь свой код, потому что это не имеет значения.

ответ

2

Сообщение об ошибке экранировано (не отображается html) из соображений безопасности. Если вы используете xhtml тему (по умолчанию), экранирование происходит в шаблоне FreeMarker.

Вы можете создать свой собственный шаблон и отображения ошибки, как он есть, или вы можете использовать различные темы (например, simple) и показать ошибки с помощью <s:fielderror> тег с escape набор атрибутов для false.

НО следует помнить, что не избежать содержимого html, которое вы не полностью контролируете, может привести к проблемам безопасности.

+0

Спасибо. Он работал так, как мне было нужно. Теперь я должен решить использовать или нет, потому что проблемы безопасности. – Adriano

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