GWT IllegalArgumentException:encodedRequest 不能为空

2024-02-05

我正在使用gwt1.5、struts2、spring和hibernate。我收到以下错误:

ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/project name] - Exception while dispatching incoming RPC call java.lang.IllegalArgumentException: encodedRequest cannot be empty

此错误仅在 IE 中出现,但在 FireFox 中正常工作。


在过去的几个月里,我对此做了很多研究 - 在详细介绍之前,我的 Web 应用程序正在使用在 Tomcat 7 上运行的 GWT 2.x,以及 Apache httpd 2.2.x 和 mod_jk 1.2.x设置在前面。

使用 mod_jk 版本 1.2.26,我偶尔会在日志中看到“encodedRequest 不能为空”错误。就像问题所说,这只会发生在 IE 中,对我来说只有 IE8/9。问题是我的服务器操作系统是 Linux,因此 NTLM 身份验证不可能是问题所在。在较新版本的 mod_jk(撰写本文时为 1.2.37)中,我会在 Tomcat 日志中收到套接字超时和读取错误。

在每隔几秒向服务器轮询一次 Web 应用程序期间,将记录此错误,以便获取在单独线程中启动的长时间运行操作的状态。轮询每五秒进行一次,但偶尔会在执行此状态请求时挂起。

经过大量 tcpdump 命令后,我发现挂起的请求将来自 Apache 重置的 TCP 连接; FIN/ACK 正在发送到浏览器,服务器将接收 POST 请求标头和正文,并且服务器将继续重置连接。然后,奇怪的是,只有标头会从浏览器返回到服务器。经过一番研究后,我发现了这一点:

为什么 Internet Explorer 在 Ajax 调用失败后不发送 HTTP post 正文? https://stackoverflow.com/questions/4796305/why-does-internet-explorer-not-send-http-post-body-on-ajax-call-after-failure

显然,IE只会在重新发送POST请求期间发送标头。按照真正的 Microsoft 风格,这个问题实际上已经存在一段时间了,已发布并安装了修补程序,但在客户端计算机上未启用。如果您不想强制所有用户编辑其注册表,则需要在服务器上禁用 HTTP Keep-Alive 或将 Keep-Alive 超时增加到 > 60 秒。对于我的 apache httpd 服务器,我将 KeepAliveTimeout 设置为 65,将 MaxKeepAliveRequests 设置为 0,以便服务器不会启动与浏览器的连接重置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GWT IllegalArgumentException:encodedRequest 不能为空 的相关文章

  • 在我的 ramaz 应用程序上显示 £ 符号时,我收到“不兼容的字符编码:CP850 和 UTF-8”

    显示时收到 不兼容的字符编码 CP850 和 UTF 8 我的 ramaz 应用程序上的符号 我怎样才能摆脱这个错误 我的 head 标签中有 UTF 8 元标签 当我输入 用键盘输入符号 看 我已将以下代码放入我的 ruby 文件中 但它
  • ruby 中的 #encode 和 #force_encoding 有什么区别?

    我真的不明白之间的区别 encode and force encoding在 Ruby 中String班级 我明白那个 kam force encoding UTF 8 将迫使 kam 是UTF 8编码 但是怎么样 encode encod
  • GWT 2.3 开发模式 - 托管模式 JSP 编译似乎不使用 java 1.5 兼容性

    无法编译 JSP 类 生成的 servlet 错误 DefaultMessage 上次更新 0 日期 中 0 时间 HH mm ss z 语法 错误 注释仅在源级别为 1 5 时可用 在尝试以开发模式在 Web 浏览器中打开我的 gwt 模
  • 经典的asp字符编码

    我在经典 asp 网站中遇到西班牙字符问题 用户可以在 aspx 页面上的表单中提交他们的姓名 地址 然后 aspx 页面将 ajax post 发送到经典的 asp 页面 它所做的所有操作都存储在我们的 Sql 2008 DB 中 我可以
  • 如何在 Linux shell 中将十六进制转换为 ASCII 字符?

    假设我有一个字符串5a 这是 ASCII 字母的十六进制表示Z 我需要找到一个 Linux shell 命令 它将接受一个十六进制字符串并输出该十六进制字符串代表的 ASCII 字符 所以如果我这样做 echo 5a command im
  • Python - Unicode 到 ASCII 的转换

    我无法在不丢失数据的情况下将以下 Unicode 转换为 ASCII u ABRA xc3O JOS xc9 I tried encode and decode他们不会这么做 有人有建议吗 Unicode 字符u xce0 and u xc
  • 为什么在 Python 2.4 中使用 Unicode 数据会出现 ASCII 编码错误,而在 2.7 中却不会?

    我有一个程序 当在 Python 2 7 中运行时 会生成正确的 Unicode 输出到标准输出 当在 Python 2 4 中运行时 我得到UnicodeEncodeError ascii codec can t encode chara
  • 在 GWT 中,在任何主机页标记上添加事件处理程序

    我想为任何标签添加 MouseOver 事件处理程序 举个例子 我想为旧版 HTML 页面中的每个锚点页面添加事件处理程序 继GWT指南 http code google com webtoolkit doc 1 6 DevGuideUse
  • GWT 身份验证和用户信息访问

    只是想知道我的以下身份验证方法是否正确 有没有什么陷阱或者遗漏的地方 非常欢迎建议和讨论 1 gt 用户提供用户名和密码 并通过RPC发送到服务器 与数据库中存储的哈希值进行比较 2 gt 假设用户名和密码准确 会话中会保存一个Auth T
  • charset-utf8 和字符实体

    我建议将我的 windows 1252 XHTML 网页转换为 UTF 8 我的编码中有以下字符实体 39 撇号 9658 右指针 9668 左指针 如果我使用编辑器更改字符集并将页面保存为 UTF 8 撇号保留为字符实体 指针被转换为代码
  • 您是否对基于 GWT 的应用程序的客户端和服务器端使用单个项目或单独的项目?

    您的 GWT 项目设置如何 您是否有一个针对客户端的项目和针对服务器端的单独项目 您能分享一下您为 GWT 前端 Spring 后端系统组织项目的经验吗 我希望在这个项目中使用 Spring GWT Tomcat Hibernate 除非您
  • 如何将 GWT 与 Visual Studio 一起使用来创建 ASP.NET 网站?

    如何将 GWT 与 Visual Studio 一起使用来创建 ASP NET 网站 如果可能 GWT 可以与任何后端一起使用 只需做一些工作 它开箱即用 使用 servlet 容器 但您不需要保留此容器 容器中的关键项是加载GWT编译代码
  • 如何使用CellTable进行单行扩展?

    我正在尝试使用新的 GWT CellTable 小部件 但我的表格需要支持单行扩展 即行的左侧有一个 zippy 单击它时 该行应该扩展以提供更多详细信息 并且该行应该跨越所有列 是否可以使用 CellTable 来实现此目的 如何动态添加
  • .NET:如何判断编码是否支持字符串中的所有字符?

    我需要输出大量文本 其中包括多种语言的各种字符 有时我需要以 Unicode 以外的字符编码 例如 Shift JIS 或 ISO 8859 2 输出文本 以便匹配它要访问的页面 如果文本中包含编码无法处理的字符 例如 ISO 8859 2
  • Perl:管理 Windows 上的路径编码

    我正在努力处理包含非英文字符的路径 Activestate Perl Windows XP 如何打开 写入 复制等位于包含希腊语 俄语 法语重音字符的路径中的文件 假设我要将 text txt 文件复制到的目录是 C Documents a
  • 禁用任何类型的浏览器窗口滚动?

    有没有办法禁用滚动 不仅仅是滚动条 还有浏览器窗口的全部功能 根据您对 Keit 的回答 您不想在打开灯箱时滚动处于活动状态 如果是这种情况 您可以使用以下 css 在打开灯箱的同时向正文添加一个类 这个解决方案的好处是它保留了滚动 空间
  • 将 .parquet 编码为 io.Bytes

    目标 将 Parquet 文件上传到 MinIO 这需要将文件转换为字节 我已经能够做到这一点了 csv json and txt bytes data to csv encode utf 8 bytes json dumps self d
  • zk 与 gwt zk 请求太多

    您好 我正在尝试比较 zk 和 gwt 的性能 在我的比较中 如果框架本身将一些代码转换为js 那么我自己无法编写任何javascript 如get 但我无法自己编写js 在以上述方式编写代码时 几乎所有在浏览器上完成的操作都会将请求发送到
  • 如何从 GWT 的序列化策略中删除实现类型?

    这个问题的反面是 如何将类型添加到 GWT 的序列化策略白名单 https stackoverflow com questions 138099 how do i add a type to gwts serialization polic
  • 更改src iframe具有跨域功能

    我正在尝试使用 GWT 制作一款将在一个 iframe 内运行的应用程序 直到这里一切正常 问题是我的实际网络中有一种表单可以将请求发送到 iframe 使用java脚本 当我按下 发送表单 按钮时 我更改了iframe的src并稍后刷新它

随机推荐