0

我有一个托管在 Jetty 中的 GWT 2.4.0 网站。当我使用 IE8 浏览此网站时,我收到以下警报消息:

错误:您的 *.gwt.xmi 模块文件可能存在问题。编译时 user.agent 值 (ie8) 与运行时 user.agent 值 (safari) 不匹配。期待更多错误。

为什么 GWT 认为我的运行时用户代理是 Safari?我怎样才能让它知道它实际上是 IE8?我是否怀疑在我的 IE8 中安装了 Chrome Frame 插件与此有关?

4

2 回答 2

0

当 GWT 模块只用一个编译时,user.agent它不会在引导 javascript 中检查它,而是直接加载该版本。当该版本检查 user.agent 时,它会找到(我猜)你的 Chrome 框架并抱怨它的 safari。

所以......我猜你只编译了你的模块:

<set-property name="user.agent" value="ie8">

我应该检查 ChromeFrame 与 GWT 的行为如何......或者简单地添加两个 user.agents 并让模块引导程序加载适合您的运行时环境的内容。

<set-property name="user.agent" value="ie8,safari">

当然,我应该检查您的 ChromeFrame 配置以查看加载了哪些页面:全部、无、某些 URL 等...

于 2012-08-08T12:29:35.447 回答
0

检查您的 *gwt.xml 文件。它是否有类似这样的东西:

<set-property name="user.agent" value="safari" />

这告诉它只编译 safari 版本。

于 2012-03-06T14:17:49.520 回答