Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ajax错误:某些';奇怪';Unicode字符在部分响应中落地。是否可以激活非ASCII字符转义?_Java_Ajax_Jsf_Unicode_Primefaces - Fatal编程技术网

Java Ajax错误:某些';奇怪';Unicode字符在部分响应中落地。是否可以激活非ASCII字符转义?

Java Ajax错误:某些';奇怪';Unicode字符在部分响应中落地。是否可以激活非ASCII字符转义?,java,ajax,jsf,unicode,primefaces,Java,Ajax,Jsf,Unicode,Primefaces,在PrimeFaces表中执行搜索时,我突然遇到ajax错误:“无效XML”。检查后,分析IE上的部分响应时出现问题。部分响应包含链接,其中标题中有一个特殊字符“”: 只有在编辑问题来源时才能看到的“箭头”是ASCII 26(SUB) 我不知道这个角色是如何进入数据库的,但它不应该破坏应用程序。我希望框架能够以某种方式处理这些字符(转义或过滤掉它们) 是否可以激活PrimeFaces/JSF部分响应中非ASCII字符的转义,或者激活一些潜在问题Unicode字符的过滤 在ajax调用中,您可

在PrimeFaces表中执行搜索时,我突然遇到ajax错误:“无效XML”。检查后,分析IE上的部分响应时出现问题。部分响应包含链接,其中标题中有一个特殊字符“”:


只有在编辑问题来源时才能看到的“箭头”是ASCII 26(SUB)

我不知道这个角色是如何进入数据库的,但它不应该破坏应用程序。我希望框架能够以某种方式处理这些字符(转义或过滤掉它们)


是否可以激活PrimeFaces/JSF部分响应中非ASCII字符的转义,或者激活一些潜在问题Unicode字符的过滤

在ajax调用中,您可以使用CDATA标记将有问题的部分包围起来 所以数据应该是这样的

<image_path><![CDATA[' . $imageurl['i'] . ']]></image_path>


在我看来,这不是框架应该关注的问题。这是关于数据库和浏览器编码类型的。看一看,您可能会发现它很方便,因为我无法控制数据库中的数据,也无法控制框架生成XML的方式,所以我希望框架至少能够以某种方式处理此类问题。Unicode转义是一个非常普遍的特性,所以我希望它应该能够以某种方式激活。我不知道您是使用JSP还是facelets。如果你阅读了我之前给你的链接,上面说facelets默认使用UTF-8。如果框架将正确的UTF-8编码数据发送到另一种编码方式的数据库,那么框架将无法做更多的工作,这将出现问题。我不确定转义是否会有帮助,但过滤无效的UTF-8字符可以解决问题。因此,该框架可以做很多事情。由于(众所周知)(许多)浏览器不会处理带有无效UTF-8字符的XML响应,我认为框架应该支持它。这会解决无效Unicode字符的问题吗?第一行抱怨的是浏览器的解析器。这个选项在所有JSF实现中都存在吗?或者它是特定于实现的,以及如何激活它?您的开头评论表明,当您传递url时,这是一个ajax错误。如果用CDATA将ajax处理过的url包围起来,那么它应该可以毫无错误地传递它。如果错误不是您想要的,那么您可以在后端处理器上处理它。CDATA是通过ajax/json/javascript处理处理奇怪字符的公认解决方案。
<image_path><![CDATA[' . $imageurl['i'] . ']]></image_path>