【发布时间】:2012-07-18 12:50:08
【问题描述】:
我们的网络应用程序具有内置搜索功能,我们的用户可以执行复杂的搜索。这是我们的软件堆栈:
- 服务器端是 Spring MVC,使用 Struts/JSP 进行查看
- 客户端 JS 库是用于表格的纯 jQuery 和 jqGrid
- Web 应用程序打包为 WAR 并部署到 Tomcat 6.0.35 容器中
- Apache 2.2.22 Web Server 是一个反向代理,为我们的 JS 提供服务(我知道这不是必需的,但这是项目交给我们的方式,而不是我们的设计!)
- 后端由另一个团队构建和维护,但使用 SOLR 和 Oracle 实现上述文本搜索功能
当用户在大约 30 秒后执行“广泛”查询(目标不明确且需要 SOLR 真正突突的查询)时,他们会在屏幕上收到一条错误消息,内容为“代理错误 ”。该错误消息将代替显示搜索结果的普通 jqGrid 表显示。
我已经对我们项目中的每个文件进行了全文搜索,但找不到这个短语、“Proxy”和“proxy”。
90% 的时间这些神秘且难以捉摸的“代理错误”发生在 IE8 和 IE9 中,尽管偶尔会在 FireFox 中发现它们。
由于在我们的代码库中找不到该字符串(或任何类似的内容),因此它必须来自这些第 3 方依赖项之一,并且只是以搜索结果的形式发回给用户。
以前有没有人见过这些技术的行为是这样的?这可能是浏览器以某种方式注入 DOM 的东西吗?我在这里傻眼了,没时间了。
【问题讨论】:
-
谢谢 ~Wolfram (+1) - 这是一个有趣的前景,我一定会检查一下,但这如何解释 IE8 和 IE9 对这个错误的特殊亲和力(就像我说的 90%时间或更多时间,这两个浏览器发生这种情况,同时,对于相同的搜索,FF 和 Chrome 非常好)。
-
不知道,但我在搜索这个时遇到了很多
502(不是504)问题。可以帮助您调查。
标签: java javascript jquery spring-mvc solr