0

我正在从客户端进行远程过程调用,核心逻辑包括在服务器端执行查询。这对除IE8以外的所有浏览器都很适用。我得到一个代码为12152的状态代码异常。当我搜索到这个时,我发现它可能不得不在会话中做些事情,但目前没有适当的答案。我如何解决这个问题?使用IE8时的GWT问题

回答

1

yay for obsecur status codes。看完所有东西后指向

HTTP状态12152服务器暂时关闭以进行数据库或服务器维护,或者出现网络错误。尝试上传时通常会出现此状态。请稍后再试。

我会尝试增加你的服务器和客户端的时间。如果这样做可以尝试通过不同的代理进行路由,有时这些代理可能会在请求中破坏报头。如果通过代理或匿名Web代理运行,请安装fiddler2或wireshark并检查您的请求,主要是标头。那里可能会有些东西。您还应该尝试在服务器端进行嗅探,并查看传入请求的外观。

在你的客户端嗅探你的开放套接字,以确保你没有一个开放的端口和服务器等一塌糊涂。 IE也可以抱怨这一点。

不幸的是,它似乎没有直接的那些错误之一。

你也可以尝试使用不同的类型或请求与req​​uestbuilder像使用所有获取或发布或其他。

1

非常感谢您的回复。我甚至可以在没有使用像Fiddler这样的工具的情况下终于搞清楚问题是幸运的。

在我的情况下,对于IE8,RPC中的逻辑按照它的方式执行,但是连接并未被关闭。所以我不得不使用一个RpcRequestBuilder实例和一个RequestBuilder对象,它可以接受头信息和超时信息。在头文件中,我输入了“Connection:close”,以确保在RPC通过后关闭连接。通过设置超时信息,我可以得到一个RequestTimeoutException对象作为Throwable对象,并基于此知道RPC是否由于超时或其他错误逻辑而失败。

+0

你也可以在RPC服务中这样做,但是你必须重载底层的requestbuilder,如果你不挑剔你如何创建你的基本服务类,那么它会变得混乱。 – 2012-08-03 18:22:09