आप प्रमाणपत्र मुद्दों कर हो सकता है। जावा में HTTPS कनेक्शन के साथ काम करते समय यह आमतौर पर समस्या का सामना करना पड़ा है।
सबसे पहले, आप की जाँच करनी चाहिए और देखें कि क्या वह URL, जिससे आप कनेक्ट करने के लिए प्रयास कर रहे हैं एक प्रसिद्ध विश्वसनीय रूट CA द्वारा एक हस्ताक्षरित प्रमाणपत्र है, और वैध (समय सीमा समाप्त नहीं) है।
मैं आपके ब्राउज़र में यूआरएल को खोलने और प्रमाणपत्र जानकारी की जाँच की सिफारिश करेंगे।
बस एक FYI करें, आपकी ब्राउज़र और जावा द्वारा मान्यता प्राप्त उन द्वारा मान्यता प्राप्त विश्वसनीय रूट सीए के बीच एक डिस्कनेक्ट हो सकता है। यहाँ कैसे जावा द्वारा मान्यता प्राप्त उन पाने के लिए के बारे में एक और Stackoverflow सवाल यह है: How can I get a list of trusted root certificates in Java?
यह एक स्व-हस्ताक्षरित प्रमाणपत्र है, तो वहाँ हुप्स आप में आयात करने और एक स्थानीय KeyStore का उपयोग कर के बारे में के माध्यम से कूद करने की आवश्यकता होगी रहे हैं। कई साइटों और ब्लॉगों है कि ऐसा करने के लिए आपका मार्गदर्शन कर रहे हैं, यहाँ ऐसे ही एक ब्लॉग (मेरा नहीं) है: Adding self-signed https certificates to java keystore
इसके अलावा, जब आप ब्राउज़र के साथ परीक्षण कर रहे हैं, यह आपको यह सत्यापित कि कोई प्रॉक्सी मुद्दे हैं कि मदद मिलेगी। यह निर्धारित करने के लिए कि आप प्रॉक्सी सर्वर से जा रहे हैं या नहीं, आपको निश्चित रूप से अपने ब्राउज़र की सेटिंग्स की जांच करनी चाहिए।
आप निश्चित रूप से java.net.URL के बजाय HttpClient का उपयोग कर इस पर गौर करना चाहिए। यहां Apache page for HttpClient 4.2.1 है।
अंत में, आप HTTP या HTTPS के माध्यम से एक फ़ाइल स्थानांतरण करने के लिए देख रहे हैं, तो आप WebDAV विचार कर सकते हैं।
मैंने अतीत में जकार्ता स्लाइड वेबडावी क्लाइंट का उपयोग किया है। दुर्भाग्यवश, यह Slide is retired at this point जैसा दिखता है, लेकिन कुछ विकल्प हैं जो आप खोज के साथ पा सकते हैं।
अलावा
मैं अपने स्रोत कोड नमूना नीचे की नकल की और इसे और अधिक बारीकी से देखा। ऐसा लगता है कि आप http के लिए गुण सेट करते हैं, लेकिन https नहीं।
HTTPS अलग गुण है:
- https.proxyHost
- https।proxyPort
कोशिश सेटिंग: Oracle's Java Networking and Proxies पर खंड 2.2 में
System.setProperty("https.proxyHost","trproxy.rwe.com") ;
System.setProperty("https.proxyPort", "443") ;
देखो।
http://docs.oracle.com/javase/6/docs/technotes/guides/net/proxies.html
यहाँ एक नज़र: http://stackoverflow.com/questions/2642777/trusting-all-certificates-using-httpclient-over-https के लिए –