बस किसी भी सामान्य WebServlet की तरह, डिस्पैचर सर्वलेट की इन्स्टेन्शियशन web.xml में आदेश दिया जा सकता <load-on-startup>
का उपयोग कर servlet 2.5 web.xml xsd
लोड-ऑन-स्टार्टअप तत्व को देखते हुए पता चलता है कि इस सर्वलेट चाहिए वेब एप्लिकेशन के स्टार्टअप पर लोड (तत्काल और इसकी init() कहा जाता है) हो। इन तत्वों की वैकल्पिक सामग्री पूर्णांक होना चाहिए जो उस क्रम को इंगित करता है जिसमें सर्वलेट लोड किया जाना चाहिए। यदि मान एक नकारात्मक पूर्णांक है, या तत्व मौजूद नहीं है, तो कंटेनर जब भी इसे चुनता है तो सर्वलेट लोड करने के लिए स्वतंत्र होता है। यदि मान एक सकारात्मक पूर्णांक या 0 है, तो कंटेनर लोड होना चाहिए और सर्विसलेट को तैनात करने के रूप में सर्वलेट प्रारंभ करना होगा। कंटेनर को यह सुनिश्चित करना होगा कि निचले पूर्णांक वाले चिह्नित सर्वलेट को उच्च पूर्णांक वाले चिह्नित सर्वलेट से पहले लोड किया गया हो। कंटेनर उसी लोड-ऑन-स्टार्ट-अप मान वाले सर्वलेट्स को लोड करने का क्रम चुन सकता है।
तो inorder के लिए DBbuildServletDispatcher
पहले लोड करने के लिए, सुनिश्चित करें कि अपनी load-on-startup
की तुलना में कम है load-on-startup
AppServletDispatcher
की
<servlet>
<servlet-name>DBbuildServletDispatcher</servlet-name>
<servlet-class>com.foo.DBbuildServletDispatcher</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>AppServletDispatcher</servlet-name>
<servlet-class>com.foo.AppServletDispatcher</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
आप डीबी संदर्भ से एक बच्चे के रूप ऐप संदर्भ चिह्नित कर सकते हैं। मुझे यकीन नहीं है कि यह सही काम है, लेकिन ऐप संदर्भ निश्चित रूप से डीबी के लिए इंतजार करेगा। –
आपको अपने वेब.एक्सएमएल में ऐपडिस्पैचर संदर्भ के लिए 1 load-on-startup> और 2 load-on-startup> जोड़ने की आवश्यकता है। इस लक्ष्य को हासिल करें। –