वेब सर्वर को JSP पेज प्रोसेस करने के लिए एक JSP इंजन, यानी एक कंटेनर की आवश्यकता होती है। JSP कंटेनर JSP पेज के अनुरोधों को इंटरसेप्ट करने के लिए जिम्मेदार होता है। यह ट्यूटोरियल Apache का उपयोग करता है जिसमें JSP पेज विकास का समर्थन करने के लिए बिल्ट-इन JSP कंटेनर होता है।
JSP कंटेनर JSP को रनटाइम वातावरण और अन्य सेवाएं प्रदान करने के लिए वेब सर्वर के साथ काम करता है। यह JSPs का हिस्सा होने वाले विशेष तत्वों को समझना जानता है।
निम्न आरेख एक वेब एप्लिकेशन में JSP कंटेनर और JSP फ़ाइलों की स्थिति दिखाता है।

JSP प्रोसेसिंग
निम्न चरण बताते हैं कि वेब सर्वर JSP का उपयोग करके वेबपेज कैसे बनाता है -
एक सामान्य पेज की तरह, आपका ब्राउज़र वेब सर्वर को एक HTTP अनुरोध भेजता है।
वेब सर्वर पहचानता है कि HTTP अनुरोध JSP पेज के लिए है और इसे JSP इंजन को अग्रेषित करता है। यह URL या JSP पेज का उपयोग करके किया जाता है जो .jsp से समाप्त होता है बजाय .html के।
JSP इंजन डिस्क से JSP पेज लोड करता है और इसे सर्वलेट कंटेंट में बदल देता है। यह रूपांतरण बहुत सरल है जिसमें सभी टेम्पलेट टेक्स्ट को println() स्टेटमेंट्स में बदल दिया जाता है और सभी JSP तत्वों को जावा कोड में बदल दिया जाता है। यह कोड पेज के संबंधित डायनामिक व्यवहार को लागू करता है।
JSP इंजन सर्वलेट को एक एक्जीक्यूटेबल क्लास में संकलित करता है और मूल अनुरोध को सर्वलेट इंजन को अग्रेषित करता है।
वेब सर्वर का एक हिस्सा जिसे सर्वलेट इंजन कहा जाता है, सर्वलेट क्लास को लोड करता है और इसे निष्पादित करता है। निष्पादन के दौरान, सर्वलेट HTML फॉर्मेट में आउटपुट उत्पन्न करता है। आउटपुट को सर्वलेट इंजन द्वारा HTTP प्रतिक्रिया के अंदर वेब सर्वर को आगे भेजा जाता है।
वेब सर्वर HTTP प्रतिक्रिया को आपके ब्राउज़र को स्टैटिक HTML कंटेंट के रूप में अग्रेषित करता है।
अंत में, वेब ब्राउज़र HTTP प्रतिक्रिया के अंदर डायनामिक रूप से जनरेटेड HTML पेज को ठीक उसी तरह संभालता है जैसे कि यह एक स्टैटिक पेज हो।
उपरोक्त सभी चरण निम्न आरेख में देखे जा सकते हैं -

आमतौर पर, JSP इंजन यह जांचता है कि क्या JSP फ़ाइल के लिए सर्वलेट पहले से मौजूद है और क्या JSP पर संशोधन तिथि सर्वलेट से पुरानी है। यदि JSP अपने जनरेटेड सर्वलेट से पुराना है, तो JSP कंटेनर मान लेता है कि JSP नहीं बदला है और जनरेटेड सर्वलेट अभी भी JSP की सामग्री से मेल खाता है। यह प्रक्रिया अन्य स्क्रिप्टिंग भाषाओं (जैसे PHP) की तुलना में अधिक कुशल और इसलिए तेज़ बनाती है।
तो एक तरह से, JSP पेज वास्तव में जावा प्रोग्रामिंग विज़ार्ड बने बिना सर्वलेट लिखने का बस एक और तरीका है। ट्रांसलेशन चरण को छोड़कर, JSP पेज को बिल्कुल एक नियमित सर्वलेट की तरह संभाला जाता है।