1

我有两个 Web 应用程序在两个不同版本的 Tomcat 上运行。App1 在 Tomcat5 上,App2 在 Tomcat6 上。有什么办法可以让我在这两者之间进行交流。例如 - 如果 App2/js/mycode.js 中有一个 JavaScript 文件,那么我想从 App1/page/mypage.jsp 中引用它。对于这两个应用程序,我将上下文定义为 -

App1.xml (Tomcat5\conf\Catalina\localhost)

<Context path="/App1" docBase="C:/eclipse/workspace/App1" debug="0">
</Context>

App2.xml (Tomcat6\conf\Catalina\localhost)

<Context path="/App2" docBase="C:/eclipse/workspace/App2" debug="0">
</Context>
4

4 回答 4

1

如果您在 Tomcat 实例前面放置一个 Apache 服务器,您可以使用mod_proxymod_rewrite来实现托管在不同服务器上的文件的通用 URL。

于 2009-09-16T06:19:49.413 回答
0

您实际上并不需要两台服务器进行通信,您只需告诉浏览器从另一个实例获取 Javascript。例如,您可以在 App1/page/mypage.jsp 中添加这个,

<script language="javascript" type="text/javascript" src="../../App2/js/mycode.js"></script>

注意相对 URL 在 src 中是如何使用的。这假设您在同一前端(Apache 或交换机)后面运行两个实例。如果您必须在不同的主机或端口上运行它们,您只需要使用绝对 URL。

另一个建议是对共享目录使用符号链接。这在 Unix 上适用于我,但我不确定它是否适用于 Windows 快捷方式。

于 2009-09-16T17:45:51.420 回答
0

如果您在 UNIX 下运行,则可以将 javascript 文件从一个应用程序符号链接到另一个应用程序。

于 2009-09-16T06:14:56.397 回答
0

如果您使用代理或 ajp 将两个应用程序安装在 apcache 服务器后面,只要您保持 fqdns 与客户端浏览器相同,就可以了。

于 2009-09-16T06:18:45.517 回答