[英]how load messages.properties in test code when using MockMvc
[英]In a spring messages.properties, how to ensure line break of error message when using an error code as key?
在messages.properties
:
error.code=This is error message.\nThis is next line of error message.
現在,當我使用此“ error.code
”為表單字段設置“ errors.rejectValue
”時,在使用以下form:errors
顯示錯誤消息時,我無法在jsp頁面上顯示'\\n'
的換行符form:errors
元素。
而不是'\\n'
,使用<br/>
也不起作用,並在頁面上顯示。
為了顯示一個<br>
作為換行符,或者錯誤消息體中的任何其他html標簽生效,例如<b>
,只需在標簽級別通過添加htmlEscape="false"
將html轉義為關閉form:errors
元素。
HTML頁面中不同行的布局實際上並不是消息包可以處理的內容,它只是不適合該任務。 如果您需要顯示多行,那么實際上您將需要多條消息,在屬性文件中有多個條目。
也許你可以做一些迭代一系列屬性的東西,在你的屬性文件中有這樣的東西:
error.code.1=This is error message.
error.code.2=This is next line of error message.
然后它成為JSP的工作來呈現消息序列。 雖然不是很優雅,但我現在想不出更好的解決方案:)
我在從數據庫加載消息時遇到了同樣的問題,這意味着'\\ n'(新行)序列已被轉義。 所以這是示例解決方案,將“\\\\ n”替換為“\\ n”:
String twoLinesMessage=((String)context.getMessage("error.code", null, locale)).replace("\\n","\n");
擴展spring標簽form:errors
並將轉換從\\n
添加到<br />
也是一種非常美麗的解決方案,但可能會起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.