gpt4 book ai didi

java - GWT 运行时 UserAgent 和编译时 UserAgent 不匹配

转载 作者:行者123 更新时间:2023-11-30 04:41:32 25 4
gpt4 key购买 nike

我最近将 gwt.xml 脚本更改为仅编译 1 个排列(仅限 ie8),这解决了我之前的问题,但是出现了一个外观问题,即每次使用 IE8 打开我的 GWT 页面时都会显示一个烦人的弹出窗口

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

更新:按照托马斯的建议,我能够通过针对 ie8 和 safari 进行编译来摆脱该消息。但是从那时起我只能在 IE9 文档模式下使用 IE9 打开网页,而不能使用 IE8 模式打开网页,我的用户正在使用 IE8

下面是 gwt.xml 的代码片段

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

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

 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 Frame 插件,但由于它是公司默认设置,因此这将是我的最后手段。

好的,这是我的最后更新,默认的 GWT 覆盖 6 排列包括 IE8,但是我的 IE 有 Chromn Frame,它将我的浏览器屏蔽为 safari,IE8 和旧版浏览器不支持“AddEventListener”方法,这是大多数 GWT 小部件取决于。因此,我的 IE8 浏览器的 gwt use safari 实现将在网页初始化时出错,指出对象不支持 AddEventListener 方法。

我的第一次尝试是将 GWT 设置为仅针对 ie8 进行编译,但这会生成上面所示的烦人的弹出窗口,

第二次尝试设置 GWT 来编译 ie8 和 safari,AddEventListener 方法再次出现此错误

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

     <meta equiv="X-UA-Compatible" content="chrome=1"> 

它让带有 Chrome Frame 的 IE 浏览器使用 Chrome 的引擎而不是 IE 引擎来处理网页,这对我来说没有多大作用,同样的故事。

我的最终解决方案是让 GWT 默认编译 6 个排列并禁用 Chrome Frame,这是公司范围内的默认插件,但如果用户想要此插件,那么他们应该真正获得实际的 chrome,让自然选择发挥其魔力。

最佳答案

GWT 认为您的 IE8 是 safari,您可能安装了 Google Chrome Frame,并且您的页面或服务器发送 the appropriate bits激活它。

所以,要么:

  • 确保您的网页/服务器不会尝试在客户端上启用 Chrome 内嵌框架
  • 针对 ie8 safari 进行编译(2 种排列):<set-property name="user.agent" value="ie8,safari" />
  • 卸载 Chrome 内嵌框架
  • 或者,如果只是为了在开发/测试应用程序时加快迭代速度,则仅编译 safari排列

关于java - GWT 运行时 UserAgent 和编译时 UserAgent 不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12163346/

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