Maven – umieszczanie archiwum WAR w instancji kontenera Tomcat

Manager projektu Maven to narzędzie, które możemy rozszerzać za pomocą pluginów. Dzisiaj przedstawię dodatek umożliwiający automatyczne budowanie, testowanie i umieszczanie aplikacji w kontenerze Apache Tomcat.

W tym poście posłużyłem się aplikacją, która została stworzona w poście SPRING MVC – KONFIGURACJA I URUCHOMIENIE PIERWSZEJ APLIKACJI.

Konfiguracja kontenera

Na początku przystępujemy do konfiguracji kontenera Tomcat. Pierwszym krokiem jest utworzenie odpowiedniego użytkownika. W tym celu musimy edytować plik tomcat-users.xml dodając poniższy kod w sekcji tomcat-users .

Konfiguracja Maven

Kolejnym  krokiem konfiguracyjnym jest konfiguracja managera Maven. Polega ona na dodaniu danych użytkownika, którego utworzyliśmy w poprzednim kroku, do pliku znajdującego się w ścieżce <lokalizacja instalacji maven>/conf/settings.xml .

W sekcjach <username>  i <password>  podajemy takie same dane, jakie umieściliśmy w pliku tomcat-users.xml . Nazwa wpisana w sekcji <id>  będzie potrzebna do konfiguracji pluginu Maven.

Plugin Maven

Ostatnią rzeczą, jaką musimy zrobić jest konfiguracja pluginu w naszym projekcie. W tym celu musimy edytować plik pom.xml. Poniższy kod należy dodać w sekcji <plugins> .

Powinniśmy dokładnie przyjrzeć się sekcji konfiguracyjnej.

warFile Ścieżka do pliku WAR, który chcemy umieścić w kontenerze.
hostname Nazwa hosta.
aliases Lista aliasów dla nazwy hosta. W przypadku, gdy dwa adresy DNS wskazują na ten sam host powinniśmy podać oba.
url Pełna ścieżka do managera kontenera Tomcat.
server Id serwera z pliku settings.xml . Id zostanie użyte przy uwierzytelnianiu pluginu przez Tomcat Manager.
path Ścieżka do kontekstu aplikacji, którą chcemy zbudować.
username Nazwa użytkownika Tomcat.
password Hasło użytkownika Tomcat.
update Flaga określająca czy istniejąca już w kontenerze aplikacja powinna zostać zaktualizowana.

W powyższym przykładzie użyłem nazwy pliku  first-application.war, ponieważ skonfigurowałem budowanie projektu tak, aby plik wynikowy nosił taką samą nazwę jak artefakt. W celu takiej samej konfiguracji w sekcji <build>  dodaj linijkę

Budowanie aplikacji

Jeżeli wszystko zostało skonfigurowane możemy przystąpić do budowania aplikacji. W tym celu za pomocą linii komend w folderze, w którym znajduje się plik pom.xml wydajemy polecenie:

Aby proces budowania został poprawnie zakończony wcześniej należy uruchomić kontener Tomcat.

Poprawne zbudowanie aplikacji - plugin

Test

Test naszej aplikacji będzie polegał na wejściu na adres  https://localhost:8443/first-application. Na ekranie powinniśmy zobaczyć napis Your first Spring application.

Spróbujmy zmienić wyświetlany napis. Najpierw edytujmy plik HelloController.java

następnie ponownie zbudujmy aplikację:

Teraz wejście na adres adres https://localhost:8443/first-application powinno zakończyć się wyświetleniem napisu Next deploy done.

Przydatne linki

  1. Oficjalna dokumentacja pluginu – tomcat.apache.org/maven-plugin-trunk/tomcat7-maven-plugin/deploy-mojo.html
  2. Opis ról managera Tomcat – tomcat.apache.org/tomcat-7.0-doc/manager-howto.html#Configuring_Manager_Application_Access

You may also like

Comments