piątek, 25 lutego 2011

Ustawienia kontekstu dla Apache Tomcat

  1. Wprowadzenie
  2. Poniższy post ma za zadanie objaśnić specyfikę działania kontekstów dla aplikacji uruchamianych w ramach kontenera Tomcat. Do zarządzania projektami wdrożonymi na serwer tomcat będziemy wykorzystywać niestandardowy plugin Eclipse o nazwie Sysdeo Eclipse Tomcat Launcher: http://www.eclipsetotale.com/tomcatPlugin.html. Pozwala on m.in. na automatyczne uruchamianie serwera w trybie debug oraz wdrażanie bez konieczności bezpośredniego kopiowania projektów.
  3. Czym jest kontekst aplikacji 
  4. Kontekst jest elementem reprezentującym aplikacje webową, która działa w ramach określonego wirtualnego hosta. Każda aplikacja wdrożona na serwer tomcat musi być rozpoznawana poprzez odpowiedni adres URL, którego końcówka przyjmuje zazwyczaj nazwę aplikacji np: http://localhost:8080/my_app

    Więcej informacji o kontekstach na stronie: http://tomcat.apache.org/tomcat-4.0-doc/config/context.html

    Apache Tomcat pozwala na dwa rodzaje wdrożeń aplikacji. Pierwszą z nich jest wdrożenie poprzez umieszczenie projektu w postaci pliku war do katalogu CATALINA_BASE/webapps. Po "wychwyceniu" nowego pliku tomcat rozpakuje jego zawartość do katalogu odpowiadającego nazwie pliku oraz tworzy kontekst wykorzystując element DefaultContext  (http://tomcat.apache.org/tomcat-4.0-doc/config/defaultcontext.html) w pliku server.xml. Standardowo Tomcat nie posiada elementu DefaultContex, a wszystkie wdrożone aplikacje przyjmują kontekst domyślny odpowiadający ich nazwie. Drugim sposobem na wdrożenie aplikacji jest jawne zdefiniowanie kontekstu przy pomocy pliku xml opisującego kontekst aplikacji. Plik powinien być umieszczony w katalogu CATALINA_BASE/webapps lub CATALINA_BASE\conf\Catalina\localhost. Przykładowo:
    
    
    W tym przypadku aplikacja będzie dostępna pod adresem. http://localhost:8080/test. Kod źródłowy nie będzie wdrażany bezpośrednio do katalogu serwera, lecz pobierany bezpośrednio z workspace Eclipse
  5. Metody pozwalające na usunięcie kontekstu
  6. Aby odwoływać się do aplikacji poprzez adres pozbawiony części odpowiadającej za kontekst należy zdefiniować kontekst aplikacji jako /ROOT.
    
    
    Dzięki temu wszystkie strony oraz serwlety będą dostępne bezpośrednio pod adresem http://localhost:8080. Definicja takiego kontekstu przysłoni standardową stronę serwera Tomcat. W przypadku gdy korzystamy z pluginu Eclipse Tomcat Launcher mamy możliwość podania nazwy kontekstu bezpośrednio w wizardzie nowego projektu. Zmiana ustawień dla istniejących projektów opiera się na edycji pliku .tomcatplugin znajdującego się w katalogu głównym.
    
        /
        false
        true
        false
        true
        
        
        /ROOT
    
    
    Po edycji pliku należy zaktualizować kontekst poprzez wywołanie komendy Tomcat Project >> Update this context definition w menu kontekstowym projektu. Wprowadzone zmiany wymagają restartu serwera. Ustawienia zostały przetestowane dla Tomcata w wersji 6.

2 komentarze:

  1. Ten komentarz został usunięty przez autora.

    OdpowiedzUsuń
  2. W bardzo prosty i przystępny sposób wyjaśniłeś tutaj ustawienie kontekstu dla apacha w wersji Tomcat. Zarządzanie serwerami w szczególności z systemem Linuź to jedna z podstawowych rzeczy w przypadku chęci bycia administratorem. Wiem, że wiele osób, które teraz pracują w https://craftware.pl i tworzą aplikacje pod klienta również przechodziło taką drogę w branży IT.

    OdpowiedzUsuń