2009-08-11 8 views
9

मैंने जेट्टी को जावा एप्लिकेशन में एम्बेड किया है और जेटी सर्वर ऑब्जेक्ट के उदाहरण पर स्टार्ट() विधि को कॉल कर रहा हूं (एक हैंडलर सूची सेट करने के बाद जो स्थैतिक स्थान का वर्णन करता है और गतिशील वेब सामग्री)। प्रारंभिक होने तक प्रारंभ() कॉल ब्लॉक पूरा हो जाता है? यदि नहीं, तो मैं कैसे निर्धारित करूं कि सर्वर पूरी तरह से शुरू हो गया है और अनुरोध प्राप्त करने के लिए तैयार है?यह पता लगाना कि एक एम्बेडेड जेट्टी सर्वर पूरी तरह से

उत्तर

0

यहाँ कैसे मैं चींटी के भीतर इस नीचे है, फ़ायरफ़ॉक्स शुरू करने का एक उदाहरण है एक बार घाट आवेदन तैयार

<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

हम के दर्जनों के साथ एक एम्बेडेड जेट्टी आवेदन प्लग में युद्ध और सर्वलेट प्रारंभ करने में किया गया था। .. ऐप शुरू होने के दौरान मुझे ब्राउज़र अनुरोध का समय कभी नहीं मिला है, इसलिए सर्वर init प्रक्रिया बहुत तेज है। हालांकि, अगर आप की जाँच

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

HTH

5

हाँ, सर्वर पूरी तरह से आरंभ नहीं हो जाता जब Server.start() रिटर्न द्वारा जाँच लें कि जेट्टी सर्वर अभी भी शुरू कर रहा है या तैयार कर सकते हैं। कुछ और करने की ज़रूरत नहीं है। दस्तावेज़ इस व्यवहार के बारे में स्पष्ट नहीं है, लेकिन मैंने कोड को देखकर इसे अभी सत्यापित किया है।

0

क्या शुरुआत() कॉल प्रारंभ प्रारंभ होने तक कॉल ब्लॉक है?

नहीं, ये पृष्ठभूमि

यदि नहीं में सर्वर चलेगा, कैसे तय करते हैं मैं जब सर्वर पूरी तरह से शुरू कर दिया और अनुरोध प्राप्त करने के लिए तैयार है?

आप 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(); 

देखें [1] अधिक जानकारी के बारे में।

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

संबंधित मुद्दे