Связь между двумя приложениями, работающими в двух разных версиях Tomcat

У меня есть два веб-приложения, работающие на двух разных версиях Tomcat. Приложение 1 находится на Tomcat5, а приложение 2 - на 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 ответа

Если вы разместите сервер Apache перед экземплярами Tomcat, вы можете использовать mod_proxy и mod_rewrite для получения общих URL-адресов для файлов, размещенных на разных серверах.

Если вы работаете в UNIX, вы можете использовать символическую ссылку на файл javascript из одного приложения в другое.

Если вы используете прокси или ajp, монтирующее два приложения за сервером apcache, при условии, что fqdns одинаковы с браузером клиента, все должно быть в порядке.

Вам не нужны два сервера для общения, вы можете просто указать браузеру, чтобы он получал Javascript из другого экземпляра. Например, вы можете добавить это в App1/page/mypage.jsp,

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

Обратите внимание, как относительный URL используется в src. Это предполагает, что вы запускаете оба экземпляра за одним и тем же внешним интерфейсом (Apache или коммутатор). Если вам нужно запустить их на другом хосте или порте, вам просто нужно использовать абсолютный URL.

Еще одно предложение - использовать символическую ссылку для общих каталогов. Это работает для меня в Unix, но я не уверен, работает ли он с ярлыком Windows.

Другие вопросы по тегам