首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用JSTL从通过AJAX作为XML检索的用户输入转义JSP中的特殊字符

问用JSTL从通过AJAX作为XML检索的用户输入转义JSP中的特殊字符
EN

Stack Overflow用户
提问于 2018-01-26 11:37:24
回答 1查看 1K关注 0票数 0

因此,我开发了一个评论系统,用户可以输入评论。如果注释线程太长,那么就有一个“查看以前的注释”链接用户可以点击获取更多的评论。获取的注释通过AJAX检索,并以XML形式返回:

FEED.JSP中的AJAX请求:

代码语言:javascript
复制
...
$.get("../GetPostComments", $.param(params), function(responseXml) {
$("#example").prepend($(responseXml).find("cfeed").html()); 
});

GetPostComments SERVLET:

代码语言:javascript
复制
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
...
  Post post = c.getCommentsWithOffset(type, postid, offset);
  request.setAttribute("post", post);
  request.getRequestDispatcher("/WEB-INF/xml/comments.jsp").forward(request, response);
}

comments.jsp

代码语言:javascript
复制
...
<c:out escapeXml="true" value="${example.comment}"></c:out>
...

一切都很好!如果线程太长,用户可以获取新的注释。但是如果其中一个获取的注释包含一个特殊的xml字符,那么它就会中断,不会显示任何内容。尽管我已经逃离了:

代码语言:javascript
复制
<c:out escapeXml="true" value="${example.comment}"></c:out>

有人知道为什么会发生这种事吗?由于某种原因,通过ajax在另一个.jsp文件中获取XML内容似乎取消了我正在进行的转义吗?

​

​

编辑控制台日志:

(可能用处不大.)它只显示了它的断裂处。(<ul></ul>)每个注释都退出在一个li中。

​

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-26 12:57:09

感谢上面评论部分的BigMike,如果没有他的提示,问题就解决不了。这与一些非常不相关的事情有关,巧合的是,这似乎是一个xml转义问题。(因为它正在为另一篇文章获取注释)

/facepalm

​

​

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48460630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档