Wybierz region
pl
  • PL
  • EN
Wydrukuj

Usługa Soap Mock jako aplikacja webowa

W niniejszym artykule znajdziesz informacje na temat konfiguracji usługi SOAP Mock tak, aby dostępna była z poziomu menedżera na tomcacie. Dowiesz się również o sposobach montowania usług SOAP Mock jako aplikacji webowych. Zanim przejdziemy do faktycznego działania poniżej wymagania systemowe.

1. Wymagania

  • Java: java-1.8.0-openjdk
  • Tomcat: Apache Tomcat 9
  • (opcjonalnie) Log4J pomocny przy problemach podczas deployowania

2. Eksport SOAP Mock do archiwum .war 

Posiadając już gotowy projekt z usługą SOAP Mock należy wykonać poniższe kroki w celu eksportu usługi jako archiwum .war. W SoapUI wygląda to następująco:

Należy kliknąć na katalog nadrzędny i z menu opcji wybrać „Deploy as War” jak na zrzucie poniżej:

Następnym krokiem jest wypełnienie danych do eksportu:

Powyższa konfiguracja stworzy plik o nazwie TestMockService, który można rozpakować, np. winRar’em. Zaznaczenie pierwszej opcji jest konieczne, jeśli wprowadzane były zmiany w konfiguracji SoapUI. Kolejna zaznaczona opcja sprawi, iż mechanizm będzie zaciągał pliki .jar z zewnętrznych katalogów.

3. Deploy automatyczny jako WAR

Jeśli chcesz zaimportować gotowe archiwum .war w celu automatycznego deployu należy udać się do menedżera tomcata:

http://127.0.0.1:8080/manager/html/

gdzie „127.0.0.1” to adres serwera a port „8080” jest portem domyślnym.

Login i hasło do menedżera należy skonfigurować w pliku tomcat-users.xml dodając wpis:

<role rolename="admin-gui"/>

  <role rolename="manager-gui"/>

  <user username="admin" password="admin" roles="admin_gui"/>

  <user username="tomcat" password="tomcat" roles="manager-gui"/>

 

Na końcu sekcji <tomcat-users>

 Plik ten znajduje się w lokalizacji ~/tomcat/conf/tomcat-users.xml

Poniżej import .war do automatycznego deployu:

Po kliknięciu „Deploy” strona menedżera tomcata powinna się przeładować i nad listą aplikacji pojawi się wynik deployu jak poniżej:

W tym przypadku wynik jest pozytywny, numerem 2 oznaczona już zdeployowana aplikacja. Jest to najprostszy sposób dodawania aplikacji z archiwum war.

Wewnątrz aplikacja webowa powinna wyglądać następująco:

Z tego poziomu również dostępne są logi usługi SOAP Mock. Jeśli potrzebujesz szczegółowych logów usługi można w tym celu skonfigurować logowanie w skrypcie groovy.

4. Dodanie aplikacji z katalogu wyeksportowanej usługi

Zanim omówimy sam deploy manualny należy wcześniej wspomnieć o budowie katalogów znajdujących się w archiwum .war. Kompletny katalog aplikacji webowej w przypadku usługi SOAP Mock zawiera:

W katalogu „WEB-INF” znajduje się plik „web.xml” który potrzebny będzie do zdeployowania usługi, poniżej konfiguracja:

Następnie klikamy „Deploy”. Wynik oraz komunikat powinien być taki sam jak w punkcie 1.

5. Dodanie aplikacji bezpośrednio na serwerze Tomcat

Ostatni ze sposobów będzie polegał na bezpośrednim skopiowaniu katalogów na serwer tomcata.

Wyeksportuj projekt z SoapUI z poniższą konfiguracją:

 

Następnie cały katalog „TestMockService” przenieś do katalogu na serwerze:

~/apache-tomcat-9.0.24/webapps/

 

Teraz zawartość biblioteki:

~/apache-tomcat-9.0.24/webapps/TestMockService

Powinna być jak niżej:

Po skopiowaniu plików po chwili aplikacja powinna być dostępna z menedżera tomcat.

6. Logowanie

Wszelkie błędy dostępne są w logach w lokalizacji ~/tomcat/logs/catalina.log

Jeśli zainstalowałeś Log4J możesz skonfigurować dokładniejsze logowanie co pozwala na szybsze rozwiązywanie błędów podczas deployu. Poniżej link do oficjalnej dokumentacji Apache Tomcat, która porusza właśnie temat konfiguracji logowania Log4J:

https://tomcat.apache.org/tomcat-9.0-doc/logging.html

 

7. Podsumowanie

Jako podsumowanie warto raz jeszcze zebrać zalety posiadania SOAP Mock jako aplikacji webowej:

  1. Szybkie zarządzanie- możliwość włączenia/ wyłączenia aplikacji z poziomu jednego okna
  2. Sprawny deploy/ undeploy
  3. Zgrupowane aplikacje
  4. Sprawny monitoring- logi dostępne z poziomu jednego okna

Samo przygotowanie środowiska do deployu zajmuje chwilę, lecz dalsze montowanie aplikacji w tomcacie może odbywać się błyskawicznie.


Dawid Wełnicki

Specjalista ds. technologii – zajmuję się administacją infrastruktury rozwojowej w środowiskach Windows i Linux oraz współpracuję przy rozwoju podejścia DevOps, prywatnie interesuję się bezpieczeństwem IT. W wolnych chwilach lubię pograć w tytuły takie jak: Call Of Duty Warzone, PUBG czy GTA V :)


Wydrukuj