2009-08-11 10 views
9

Mam wbudowany Jetty w aplikacji java i wywołuję metodę start() na instancji obiektu serwera Jetty (po ustawieniu listy programu obsługi, która opisuje położenie obiektu statycznego i dynamiczna treść internetowa). Czy blokada start() do momentu zakończenia inicjalizacji? Jeśli nie, w jaki sposób określić, kiedy serwer jest w pełni uruchomiony i gotowy do odbierania żądań?Wykrywanie, kiedy wbudowany serwer Jetty jest w pełni zainicjowany

Odpowiedz

0

Oto przykład, jak mam w dół to w ciągu ANT, uruchomienie Firefoksa raz aplikacja pomost był gotowy

<parallel> 
    <jetty tempDirectory="${work.dir}"> 
     <connectors> 
      <selectChannelConnector port="${jetty.port}"/> 
     </connectors> 
     <webApp name="ex1" warfile="ex1.war" contextpath="/ex1"/> 
    </jetty> 

    <sequential> 
     <waitfor maxwait="10" maxwaitunit="second"> 
      <http url="http://localhost:${jetty.port}/ex1"/> 
     </waitfor> 

     <exec executable="firefox" spawn="yes"> 
      <arg line="http://localhost:${jetty.port}/ex1"/> 
     </exec> 
    </sequential> 
</parallel> 
3

Mamy wbudowany aplikacja Jetty z dziesiątkami plug-in Wars i serwletów zainicjować. ..Nie miałem czasu na żądanie przeglądarki podczas uruchamiania aplikacji, więc proces inicjowania serwera JEST dość szybki. Można jednak sprawdzić, czy serwer Jetty jest jeszcze gotowy uruchomieniem lub poprzez sprawdzenie

Server.isStarting() 
Server.isStarted() 
Server.isRunning() 

HTH

5

Tak, serwer jest całkowicie inicjowana podczas Server.start() zwraca. Nie musisz robić nic więcej. Dokumentacja nie jest jasna co do tego zachowania, ale właśnie zweryfikowaliśmy je, patrząc na kod.

0

Czy blokada start() jest zakończona do momentu zakończenia inicjowania?

Nie, to będzie działał serwer w tle

Jeśli nie, w jaki sposób określić, kiedy serwer jest w pełni uruchomiony i gotowy do przyjmowania wniosków?

Używa się metody org.eclipse.jetty.server.Server#join().

// The use of server.join() the will make the current thread join and 
// wait until the server is done executing. 
// See 
// http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html#join() 
server.join(); 

Zobacz [1] po więcej informacji.

[1] http://www.eclipse.org/jetty/documentation/9.3.x/embedding-jetty.html

Powiązane problemy