java.lang.IllegalStateException का क्या कारण बनता है: अधिकतम स्वीकार्य पोस्ट आकार बढ़ाने के लिए टोमकैट/mod_jk


8

में कौन सा कॉन्फ़िगरेशन ट्विक किया जाना चाहिए, और यह कहां रहता है?

20

डिफ़ॉल्ट रूप से अपाचे टॉमकैट HTTP POST अनुरोधों के अधिकतम आकार पर एक सीमा निर्धारित करता है जो इसे स्वीकार करता है। टॉमकैट 5 में, यह सीमा 2 एमबी पर सेट है। जब आप 2 एमबी से बड़ी फ़ाइलों को अपलोड करने का प्रयास करते हैं, तो यह त्रुटि हो सकती है।

समाधान टोमकैट को सीमा बढ़ाने के द्वारा या इसे अक्षम करके बड़े POST अनुरोधों को स्वीकार करने के लिए पुन: कॉन्फ़िगर करना है। यह संपादन [TOMCAT_DIR] /conf/server.xml द्वारा किया जा सकता है। सीमा बढ़ाने के लिए HTTPConnector के लिए एक बड़े मान (बाइट्स में) के लिए टोमकैट कॉन्फ़िगरेशन पैरामीटर maxPostSize सेट करें। इसे 0 पर सेट करने से आकार की जांच अक्षम हो जाएगी। अधिक जानकारी के लिए Tomcat Configuration Reference देखें।


4

यह अन्य लोगों के लिए होगा, मुझे लगता है कि आप अपाचे HTTP और टोमकैट (टोमकैट/मोड_जेके) को जोड़ रहे हैं, इस मामले में कोयोट/जेके 2 एजेपी 1.3 कनेक्टर को उसी तरह संपादित करें जैसे आप इसे मानक कनेक्टर (कोयोट HTTP/1.1), क्योंकि AJP1.3 कनेक्टर वह है जहां टोमकैट डेटा प्राप्त करता है।

<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 --> 
<Connector port="8009" 
      enableLookups="false" redirectPort="8443" debug="0" 
      protocol="AJP/1.3" maxPostSize="0"/> 

0

IllegalStateException अपवाद का मूल कारण एक जावा सर्वलेट उत्पादन स्ट्रीम में लिखें करने के बाद प्रतिक्रिया प्रतिबद्ध रहा है प्रयास कर रहा है है।

ध्यान रखें कि अनुरोध को पुनर्निर्देशित/प्रेषित करने के बाद प्रतिक्रिया में कोई सामग्री नहीं जोड़ा गया है।