से दोनों त्रुटि संदेश और शरीर की स्थापना मैं एक सर्वलेट कि इतने की तरह एक http प्रतिक्रिया वापस आ जाएगी लिखना चाहते हैं:सर्वलेट
HTTP/1.1 500 <short custom message>
Content-Length: ...
<longer custom message>
कारण यह है कि मैं एक कार्यक्रम संबंधी ग्राहक प्रतिक्रिया संदेश प्रोसेस करने में सक्षम होना चाहता हूँ है एक विशेष प्रतिक्रिया लेने के लिए, लेकिन मैं प्रतिक्रिया शरीर को एक लंबे स्पष्टीकरण के साथ भरना चाहता हूं ताकि ब्राउज़र का उपयोग करना आसान हो।
अब, HttpServletResponse में sendError (int, स्ट्रिंग) विधि है जो मुझे त्रुटि कोड और एक संदेश निर्दिष्ट करने की अनुमति देती है। जावाडॉक्स केवल इतना कहता है कि संदेश किसी प्रकार के एचटीएमएल पेज में एम्बेड किया जाएगा, लेकिन http प्रतिक्रिया संदेश सेट करने के बारे में कुछ नहीं। इस विधि को कॉल करने के बाद, आपको प्रतिक्रिया में कुछ और लिखने की अनुमति नहीं है। मेरे परीक्षणों में (जेटी के साथ), संदेश का उपयोग http प्रतिक्रिया और एचटीएमएल बॉडी दोनों के लिए किया जाता है, जो मेरे साथ ठीक होगा, सिवाय इसके कि मैं दो अलग-अलग तारों को निर्दिष्ट करना चाहता हूं और मुझे नहीं लगता कि http प्रतिक्रिया की सेटिंग संदेश को एक अलग कार्यान्वयन के साथ गारंटी दी जाती है।
एक सेटस्टैटस (int) विधि भी है जिसे आप किसी भी कोड से कॉल कर सकते हैं, और फिर आप अपना स्वयं का HTML बॉडी लिख सकते हैं। यह करीब है, सिवाय इसके कि आप http प्रतिक्रिया संदेश निर्दिष्ट नहीं कर सकते हैं।
अंत में, एक सेटस्टैटस (int, स्ट्रिंग) विधि है जो वास्तव में वही करता है जो वास्तव में करता है, लेकिन किसी प्रकार की अस्पष्टता के कारण इसे हटा दिया जाता है। मुझे लगता है कि कुछ सर्वलेट कंटेनर प्रतिक्रिया शरीर को संदेश लिख रहे थे और प्रतिक्रिया बंद कर रहे थे।
बहिष्कृत विधि का उपयोग करने के अलावा, मुझे लगता है कि मैं यहां खराब हूं, लेकिन अगर कोई और कोई चाल जानता है तो मुझे उत्सुकता है?
धन्यवाद, यह एक उत्कृष्ट बिंदु है और शायद इस समस्या के साथ ज्यादातर लोगों की सहायता करेगा :) मैं पूरे वेब ऐप सेटअप के बिना एम्बेडेड जेटी का उपयोग कर रहा हूं: यह एक पूरी तरह से स्टैंड-अलोन सर्वलेट है। मैं कम से कम यह देखने के लिए चारों ओर पोक कर सकता हूं कि त्रुटि पृष्ठ किसी भी तरह कोड में स्थापित किया जा सकता है, लेकिन मैं शायद प्रोग्रामेटिक कॉलर्स होने पर बस विवरण के लिए शरीर को देख सकता हूं। –
बस एक चेतावनी का उल्लेख करना चाहता था जिसे मैंने पार किया। यदि आप jsp के बजाय एक HTML पृष्ठ का उपयोग करने का प्रयास करते हैं, तो सर्वर सही स्थिति कोड नहीं भेजेगा हालांकि त्रुटि पृष्ठ सामग्री प्रदर्शित की जाएगी। – Asa