आपका प्रोग्राम डेस्कटॉप/स्टैंडअलोन नहीं है, क्योंकि यह सर्वर पर चलने वाला सर्वलेट है। जब आप इसे ग्रहण में दाएं क्लिक करके और run as
->run on server
पर चलाते हैं, तो ग्रहण वास्तव में परिणामों को प्रदर्शित करने के लिए एक वेब पेज खोलता है। इसलिए, आपका प्रोग्राम अब एक वेब अनुप्रयोग है, और ग्रहण (या जो पृष्ठ खुलता है) क्लाइंट है। क्लाइंट आपके द्वारा भेजी गई जानकारी को सहेज रहा है, न कि आपका प्रोग्राम। समझ गया?
content-disposition
शीर्षलेख केवल डाउनलोड के फ़ाइल नाम का सुझाव देने के लिए है। ब्राउज़र सेटिंग्स परिभाषित करती हैं कि क्या यह खुल जाएगा विंडो या नहीं। आप इसे नियंत्रित नहीं कर सकते।
उदाहरण के लिए, Google क्रोम में, Setting
/Advanced Setting
/Downloads
में, विकल्प Ask where to save each file before downloading
है। केवल अगर यह विकल्प चुना गया है तो यह आपके द्वारा इच्छित संवाद को खोल देगा। अन्यथा यह इसे एक डिफ़ॉल्ट स्थान में सहेज लेगा (ब्राउज़र सेटिंग्स में भी परिभाषित)। सभी ब्राउज़रों के लिए इसी तरह के विकल्प मौजूद हैं।
भी कृपया ध्यान दें कि, content-type
हैडर के आधार पर, ब्राउज़र प्रदर्शन सामग्री के लिए नहीं डाउनलोड यह प्रयास करें, और होगा। उदाहरण के लिए, ब्राउज़र ग्रंथों और एचटीएमएल को प्रदर्शित करने का प्रयास करेगा। लेकिन फिर आप कर सकते हैं बल एक गैर प्रदर्शन योग्य प्रकार के शीर्ष लेख की स्थापना करके डाउनलोड:
response.setContentType("application/octet-stream");
मामले में आप एक वेब एप्लिकेशन बनाने के लिए नहीं करना चाहती: आपके प्रोग्राम एक सर्वर पर चलाता है के बाद से, यह बस जानकारी भेजता है और किया जाता है। यह क्लाइंट प्रोग्राम है जो यह तय करता है कि इसके साथ क्या करना है। आपके वर्तमान मामले में ग्राहक एक ब्राउज़र है (या ग्रहण पृष्ठ खोलने वाला ग्रहण)। content-disposition
शीर्षलेख जैसे शीर्षलेख ब्राउज़र के उद्देश्य से हैं। यदि आप अपना खुद का क्लाइंट (स्विंग क्लाइंट, एंड्रॉइड ऐप, आईफोन ऐप) बनाना चाहते हैं जो ब्राउज़र नहीं है, तो क्लाइंट सर्वर से जानकारी प्राप्त करेगा और तय करेगा कि इसके साथ क्या करना है (इसे प्रदर्शित करें, या इसे किसी भी में सहेजें रास्ता), यहां तक कि HTTP शीर्षलेखों को अनदेखा कर रहा है।
मेरा मानना है कि यह सर्वर की तरफ है। आप क्लाइंट साइड में सर्वर ईवेंट को प्रचारित करने का प्रयास कर रहे हैं। – christopher
यहां देखें: http://stackoverflow.com/questions/3802510/force-to-open-save-as-popup-open-at-text-link-click-for-pdf-in-html और http: //stackoverflow.com/questions/2226192/generate-some-xml-in-javascript-prompt-user-to-save-it सम्मान –
@ DaniloMuñoz: जैसा कि मैं देख सकता हूं कि एवोब दो परिदृश्य अलग-अलग रूप हैं .. लेकिन चिंता के लिए धन्यवाद –