jstl escapeXml 属性设置

  最近修改了一个老系统。系统用STURTS1 做的 服务端ACTION 获取的消息比较长 输出到JSP 页面后发现没有换行

  服务端部分代码

   request.setAttribute(Constants.BIZ_MESSAGE, "提示:纳税人普通发票机打资格信息登记成功!<br>"+message.toString());

return mapping.findForward("enterTaxpayerExport");

    输出JSP 页面 用了一个自定义标签显示 输出用 JSTL 显示

    <auto:msg id="message" type="1">

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

   </auto:msg>

    显示结果消息没有换行


 在服务端JAVA 代码中折腾了好久  换成成 换行符号\n 还是没有效果

最后偶然发现是由于输出JSTL 对原始数据字符串信息加工了

就是escapeXml 属性的问题

后来修改 

<c:out value="${message}" escapeXml="false" />

问题解决

分析是由于escapeXml="false" 设置后 JSTL 将原始数据字符串输出,

其中我后台字符串中有了<BR> 换行了也一并输出,到了HTML 页面显示换行

达到预期效果



平时不经常用的东西有时候很耽误你狠长时间,哎 也怪最近基础不扎实

你可能感兴趣的:(html,C++,c,jsp,C#)