HomeDocumentation > Apache Geronimo v1.1 - Instrukcja użytkownika > Administracja Geronimo > Zadania administracyjne > Administracja aplikacjami > Instalowanie i usuwanie aplikacji

Istnieje kilka możliwości instalowania i usuwania aplikacji:

Kiedy budujesz swoja aplikacje, możesz w niej załączyć plan instalacji. W trakcie instalowania Geronimo sprobuje zbudować plan instalacji z plików geronimo-web.xml i web.xml (lub geronimo-application.xml i geronimo-application-client.xml w zależności od rodzaju aplikacji) z katalogu WEB-INF w twojej aplikacji. Jsli Geronimo nie znajdzie tych plików, postara się zainstalować aplikację używając ustawień domyślnych. Jeśli to zawiedzie i nie uda się zainstalować aplikację, to będziesz musiał dostarczyć pliki z planami instalacji. Możesz je dodać do aplikacji albo wskazać jako zewnętrzne plany instalacji. W następnych rozdziałach omówimy obie możliwości.

Konsola administracyjna Geronimo (Geronimo Administration Console)

Instalacja aplikacji poprzez Geronimo Administration Console rozpoczyna się od wybrania linku Deploy New w menu po lewej stronie. Zobaczysz portlet Install New Applications. Ten portlet pozwala również na automatyczne uruchomienie aplikacji po jej pomyślnym zainstalowaniu.

Jak wspomnieliśmy wcześniej, w tym przykładzie użyjemy prostej aplikacji JSP HelloWorld stworzonej w rozdziale Szybki start - Apache Geronimo dla niecierpliwych. Ta aplikacja zawiera plan instalacji.

W portlecie Install New Applications w sekcji Archive: kliknij przycisk Browse i wskaż plik HelloWorld.war. Upewnij się że opcja Start app after install jest zaznaczona (jest zaznaczona domyślnie)

Po pomyślnej instalacji, w górnej części portletu, powinieneś zobaczyć komunikaty: " The application was successfully deployed. " i " The application was successfully started. ".

Innym sposobem na sprawdzenie czy instalacja zakończyła się pomyślnie i aplkacja działa, jest sprawdzenie w portlecie Installed Web Applications. Wybierz link Web App WARs w menu po lewej stronie. Na liście aplikacji, powinieneś zobaczyć aplikację HelloWorld ze statusem running.

Użyliśmy tego portletu, ponieważ instalowaliśmy aplikację HelloWold.WAR. Gdy zainstalujesz aplikację EAR, jej status sprawdzisz w portlecie Installed Application EARs wybierając link Application EARs. Procedura instalacji jest taka sama dla aplikacji w formacie WAR i EAR.

Usunięcie aplikacji w Geronimo Administration Console oznacza użycie tych samych portletów. Odpowiednio Installed Web Applications lub Installed Application EARs w zależności od rodzaju aplikacji którą chcesz odinstalować.

Dla naszego przykładu, otwórz portlet Installed Web Applications i kliknij link Uninstall w wierszu dla aplikacji HelloWorldApp.
Aplikacja zostanie zatrzymana a następnie odinstalowana. W dolnej części portletu powinieneś zobaczyć potwierdzenie " Uninstalled application ".

To są podstawowe operacje pozwalające na zainstalowanie i usunięcie aplikacji z użyciem Geronimo Administration Console. Dwa następne rozdziały skupiają się na linii poleceń.

Narzędzie instalacyjne (Deployer tool)

Narzędzie instalacyjne pozwala Ci, poza innymi możliwościami, na instalowanie i usuwanie aplikacji w linii poleceń. W tym rozdziale skupimy się tylko na tych dwóch operacjach wykonanych na naszej przykładowej aplikacji. Narzędzie jest opisane szczegółowo w rozdziale Deployer tool

Żeby zainstalować plik aplikacji HelloWorld.war, otwórz linię poleceń, przejdź do katalogu <geronimo_home>\bin i wykonaj następujące polecenie:

deploy --user system --password manager deploy <app_home>\HelloWorld.war

Jeśli archiwum twojej aplikacji nie zawiera planu instalacji w katalogu WEB-INF, możesz go (tak jak w Geronimo Administration Console) wkazać jako zewnętrzny plik. Wystarczy jeśli do poprzedniego polecenia dodasz ścieżkę i nazwę pliku z planem instalacji.

deploy --user system --password manager deploy <app_home>\HelloWorld.war <deployment_plan_home>\plan.xml

Zwróć uwagę, że wskazując zewnętrzny plik z planem instalacji możesz użyć dowolnej nazwy, nie musisz używać wzoru geronimo-XYZ.xml.

Po zainstalowaniu powinieneś zobaczyć potwierdzenie podobne do tego:

D:\geronimo-1.1-Tomcat\bin>deploy --user system --password manager deploy \HelloWorld\HelloWorld.war
Using GERONIMO_BASE:   D:\geronimo-1.1-Tomcat
Using GERONIMO_HOME:   D:\geronimo-1.1-Tomcat
Using GERONIMO_TMPDIR: D:\geronimo-1.1-Tomcat\var\temp
Using JRE_HOME:        C:\Java\jdk1.5.0_06\
    Deployed sample.applications/HelloWorldApp/1.1/war @
    http://hc2t60p:8080/hello

W odróznieniu od instalacji przez Geronimo Administration Console, w linii poleceń otrzymujesz więcej informacji. Na przykład widzisz Component Name (lub moduleId - identyfikator modułu) jak również context root pod którym aplikacja jest zainstalowana. Jest to bardzo przydatne gdy instalujesz, testujesz i usuwasz kilka aplikacji - cięzko by było zapamiętać wszystkie te informacje.

Używając narzędzia instalacyjnego możesz zobaczyć listę zainstalowanych aplikacji. Polecenie list-modules wyświetli listę aplikacji. Rezultat możesz zawęzić pytając wyłącznie o aplikacje w stanie started lub stopped. Polecenie list-modules wydane bez żadnych parametrów wyświetli domyślnie wszystkie uruchomione aplikacje.

Przed usunięciem aplikacji możesz chcieć zobaczyć listę żeby sprawdzić Component Name (lub moduleId - identyfikator modułu). Przejdź do katalogu <geronimo_home>\bin i wykonaj poniższe polecenie:

deploy --user system --password manager list-modules

Otrzymasz listę podobną to poniższej:

D:\geronimo-1.1-Tomcat\bin>deploy --user system --password manager list-modules
Using GERONIMO_BASE:   D:\geronimo-1.1-Tomcat
Using GERONIMO_HOME:   D:\geronimo-1.1-Tomcat
Using GERONIMO_TMPDIR: D:\geronimo-1.1-Tomcat\var\temp
Using JRE_HOME:        C:\Java\jdk1.5.0_06\
Found 34 modules
  + console.dbpool/Derby_Test/1.0/rar
  + geronimo/activemq/1.1/car
  + geronimo/activemq-broker/1.1/car
  + geronimo/axis/1.1/car
  + geronimo/axis-deployer/1.1/car
  + geronimo/client-deployer/1.1/car
  + geronimo/geronimo-gbean-deployer/1.1/car
  + geronimo/hot-deployer/1.1/car
  + geronimo/j2ee-deployer/1.1/car
  + geronimo/j2ee-security/1.1/car
  + geronimo/j2ee-server/1.1/car
  + geronimo/j2ee-system/1.1/car
  + geronimo/openejb/1.1/car
  + geronimo/openejb-deployer/1.1/car
  + geronimo/remote-deploy-tomcat/1.1/car @ http://hc2t60p:8080/remote-deploy
  + geronimo/rmi-naming/1.1/car
  + geronimo/sharedlib/1.1/car
  + geronimo/system-database/1.1/car
  + geronimo/tomcat/1.1/car
  + geronimo/tomcat-deployer/1.1/car
  + geronimo/webconsole-tomcat/1.1/car
      `-> standard.war @ http://hc2t60p:8080/console-standard
      `-> framework.war @ http://hc2t60p:8080/console
  + geronimo/welcome-tomcat/1.1/car @ http://hc2t60p:8080/
  + sample.applications/HelloWorldApp/1.1/war @ http://hc2t60p:8080/hello
    geronimo/client/1.1/car
    geronimo/client-corba/1.1/car
    geronimo/client-security/1.1/car
    geronimo/client-system/1.1/car
    geronimo/j2ee-corba/1.1/car
    geronimo/javamail/1.1/car
    geronimo/online-deployer/1.1/car
    geronimo/shutdown/1.1/car
    geronimo/uddi-tomcat/1.1/car
    geronimo/upgrade/1.1/car
    geronimo/upgrade-cli/1.1/car

Spójrz na linię zawierającą sample.applications/HelloWorldApp/1.1/war. To jest identyfikator który musisz użyć przy usuwaniu aplikacji.

Przejdź do katalogu <geronimo_home>\bin i uruchom poniższe polecenie, używając Component Name który przed chwilą odczytaliśmy z listy aplikacji.

deploy --user system --password manager undeploy sample.applications/HelloWorldApp/1.1/war

To polecenie zatrzyma działąjącą aplikację a następnie ją usunie. Powinieneś zobaczyć potwierdzenie podobne do tego:

D:\geronimo-1.1-Tomcat\bin>deploy --user system --password manager undeploy sample.applications/HelloWorldApp/1.1/war
Using GERONIMO_BASE:   D:\geronimo-1.1-Tomcat
Using GERONIMO_HOME:   D:\geronimo-1.1-Tomcat
Using GERONIMO_TMPDIR: D:\geronimo-1.1-Tomcat\var\temp
Using JRE_HOME:        C:\Java\jdk1.5.0_06\
    Module sample.applications/HelloWorldApp/1.1/war unloaded.
    Module sample.applications/HelloWorldApp/1.1/war uninstalled.

    Undeployed sample.applications/HelloWorldApp/1.1/war

W tym przykładzie użyliśmy tego samego narzędzia z trzema różnymi poleceniami:

  • deploy
  • list-modules
  • undeploy

To nie są wszystkie polecenia obsługiwane przez to narzędzie. Proszę spójrz do Tools and commands jeśli chcesz dowiedzieć się więcej.

Instalacja na żywo (Hot deployment)

Apache Geronimo wspiera Hot Deployment. To znaczy że możesz przekopiować archiwum JAR do katalogu <geronimo_home>/deploy i aplikacja zostanie automatycznie zainstalowana. Ten mechanizm działa również dla usuwania i instalowania noweych wersji. Zamiast spakowanego archiwum możesz przekopiować rozpakowany katalaog aplikacji

Zwróć uwagę że w tej metodzie musisz dołączyć plan instalacji w archiwum aplikacji. Ta metoda nie wspiera użycia zewnętrznych plików z planami instalacji. Powinieneś być świadom że aplikacje zainstalowane z użyciem Deployer tool lub Geronimo Administration Console nie są widoczne w katalogu <geronimo_home>/deploy.

Kiedy skopiujesz aplikację do katalogu deploy, powiedzmy HelloWorld.war, zobaczysz informację na konsoli na której jest uruchomiony Geronimo, potwierdzającą że aplikacja została zainstalowana.

16:26:49,453 INFO  [Hot Deployer] Deploying HelloWorld.war
    Deployed sample.applications/HelloWorldApp/1.1/war @
    http://hc2t60p:8080/hello

Usunięcie aplikacji sprowadza się do usunięcia pliku WAR lub EAR z katalogu deploy. Gdy aplikacja zostanie usunięta, na konsoli w której jest uruchomniony Geronimo zobaczysz wiadomość potwierdającą że aplikacja została odinstalowana.

16:30:03,796 INFO  [Hot Deployer] Undeploying HelloWorld.war
16:30:04,015 INFO  [DirectoryMonitor] Hot deployer notified that an artifact was removed: sample.applications/HelloWorldApp/1.1/war
    Undeployed sample.applications/HelloWorldApp/1.1/war