首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GWT运行时UserAgent和编译时UserAgent不匹配

GWT运行时UserAgent和编译时UserAgent不匹配
EN

Stack Overflow用户
提问于 2012-08-29 00:11:14
回答 1查看 2.6K关注 0票数 1

我最近更改了gwt.xml脚本,只编译1个置换(仅限IE8 ),这解决了我之前的问题,但是出现了一个修饰问题,即每次使用IE8打开我的GWT页面时,都会出现一个恼人的弹出窗口

在这里我包含了显示弹出窗口的屏幕截图,任何帮助摆脱它的人都将不胜感激。

更新:遵循托马斯的建议,我能够通过为ie8和safari编译来消除这一消息。但是,从那时起,我只能在IE9文档模式下使用IE9打开网页,而不能在IE8模式下打开,我的用户使用的是IE8

下面是gwt.xml的代码片段

代码语言:javascript
复制
    <set-property name="user.agent" value="ie8"/>
<extend-property name="user.agent" values="safari" />

下面是显示异常的GWT开发日志,用户代理'Mozilla/4.0‘确实让我困惑,因为我已经安装了Firefox 14.0.1。

代码语言:javascript
复制
 11:12:17.143 [ERROR] [dca] Failed to load module 'dca' from user agent 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E; MS-RTC LM 8)' at 127.0.0.1:51883

我还发现有一个用于IE的Google Chrome框架插件,但由于这是公司的默认设置,这将是我最后的选择。

好了,这是我的最终更新,在默认的GWT封面6排列包括IE8,但是我的IE有Chromn框架,它掩蔽我的浏览器到safari,IE8和旧的浏览器不支持"AddEventListener“方法,这是大多数GWT依赖的。因此,gwt为我的IE8浏览器使用safari实现会在网页初始化时出错,说object不支持AddEventListener方法。

我的第一次尝试是将GWT设置为仅为ie8编译,但是这会生成上面显示的恼人的弹出窗口,

第二次尝试将GWT设置为编译ie8和safari,这也是AddEventListener方法的错误

最后一次尝试是利用Chrome框架并设置

代码语言:javascript
复制
     <meta equiv="X-UA-Compatible" content="chrome=1"> 

它让带有Chrome框架的IE浏览器使用chrome的引擎来处理网页,而不是IE引擎,这对我来说没有太大的帮助,同样的故事。

我最后的解决方案是让GWT编译6排列作为默认值并禁用Chrome框架,这是公司范围内的默认插件,但如果用户想要这个插件,那么他们应该真正得到实际的铬,让自然选择发挥它的魔力。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-29 00:18:04

GWT认为你的IE8是一个safari,你可能安装了Google Chrome框架,你的页面或服务器发送the appropriate bits来激活它。

所以,要么:

  • 确保您的页面/服务器不会尝试在客户端启用Chrome Frame针对ie8和safari进行编译(2个排列):

Chrome Frame

  • 或者,如果只是为了在开发/测试应用程序时加快迭代速度,请仅编译safari permutation
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12163346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档