Развертывание нескольких экземпляров EAR (представляющих версии) в Glassfish
-
20-09-2019 - |
Вопрос
По сути, я хочу иметь возможность развертывать несколько версий одного и того же файла EAR на одном сервере (экземпляр Glassfish?) и иметь уникальный путь к каждой версии, разделяющий их.
Из моего чтения по этому поводу следует, что несколько EARs развертываются в корневом каталоге пространства имен веб-сервера, чтобы они могли сосуществовать, если у них нет конфликтующего контекста-root of WAR.
В моем случае я бы предпочел, чтобы вместо того, чтобы все указывало "/", я хотел бы иметь возможность маркировать данную сборку EAR-файла, чтобы ОНА ВСЕГДА развертывалась по заданному пути, например "/ foo-20100319" или "/ foo-CUSTOMER-20010101".Это можно легко сделать с помощью одного файла WAR, просто переименовав его.Я не нуждаюсь и не хочу, чтобы они мешали друг другу.
Насколько я понимаю, это переназначение выходит за рамки файла application.xml, поэтому я обнаружил, что http://docs.sun.com/app/docs/doc/820-7693/beayr?a=view говорит, что я могу указать web-uri и context-root, но я не уверен, что то, что я хочу сделать, можно указать с их помощью в Glassfish.
Как мне следует подойти к этому?У меня есть полный контроль над процессом сборки.
(Я нашел Развертывание нескольких веб-приложений Java в Glassfish за один раз но я не уверен, как применить это к тому, что мне нужно).
Решение
Тот Самый application.xml позволяет сопоставить веб-приложение, заключенное в ear, с корневым контекстом по вашему выбору.Вы также можете сделать это с помощью sun-application.xml.
Поскольку вы полностью контролируете процесс сборки, выбор за вами.
Возможно, вы захотите прочитайте о опции --deploymentplan подкоманды deploy утилиты asadmin от GlassFish.Это позволяет вам добавить дополнительные файлы в развернутый архив перед обработкой развертывания...Таким образом, вы можете создать один "общий" файл ear и несколько более коротких файлов deploymentplan, которые "объединяют" файл sun-application.xml, необходимый для создания индивидуального развертывания.