gpt4 book ai didi

Ajax 在 JSF 2 应用程序中不起作用

转载 作者:行者123 更新时间:2023-12-01 04:46:00 25 4
gpt4 key购买 nike

尝试使用 <f:ajax render="@form" listener="#{myBean.onSelectItemChange}" /> 刷新表单时出现错误

弹出窗口中的消息是“emptyResponse:从服务器收到空响应。检查服务器错误日志。”

在 Firefox 控制台中,错误是“XML 解析错误:XML 或文本声明不在实体位置的开头”

相同的代码在我的本地环境中运行良好。我在本地和生产环境中都使用 Tomcat 9。我只在生产中遇到错误。

xhtml页面以

开头
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:p="http://primefaces.org/ui" xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets">

呈现时,<!DOCTYPE html>会自动添加到页面顶部。

我也试过添加 <?xml version="1.0" encoding="UTF-8"?>在页面顶部。

编辑:更具体地说明错误:XML 解析错误:XML 或文本声明不在实体位置的开头:http://serverIP:8080/app/myPage第 2 行,第 1 列:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html>

更新:XHR 响应如下所示:

<?xml version='1.0' encoding='UTF-8'?>
<?xml version='1.0' encoding='UTF-8'?>
<partial-response>
...
</partial-response>

第一行重复两次

顺便说一句,该应用程序在我的开发环境中正常运行。我在开发 (Windows) 和生产 (Ubuntu) 计算机上都使用 Tomcat9。

最佳答案

如果客户端记录了这个错误,服务器端的 XHTML 不应该受到指责,或者只能间接受到指责。查看浏览器开发人员工具中的真实响应将显示真正的原因。

执行此操作后,很明显存在“重复”序言。在标题中使用它(或在谷歌搜索中)很可能指向 Stackoverflow 中现有的 Q/A,并有效地使这个 Q/A 成为它的副本:Ajax update has no effect, Firefox errors: XML or text declaration not at start of entity

出于两个原因,我仍然将此作为答案发布:

  • 向他人展示“根本原因分析”的相关性
  • 它不能被标记为重复,因为上面有赏金

关于Ajax 在 JSF 2 应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46483490/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com