2010-01-30 10 views
5

का उपयोग कर मैं एक जावा ग्राहक से एक WCF वेब सेवा है जो करने के लिए कनेक्ट करने के लिए है WCF सेवा करने के लिए जावा ग्राहक कनेक्ट करने के लिए कैसे निम्नलिखित बाध्यकारी विन्यास:clientCredentialType = "मूल"

<basicHttpBinding> 
    <binding name="basicHttpBindingSecurity"> 
     <security mode="TransportCredentialOnly"> 
      <transport clientCredentialType="Basic"/> 
     </security> 
    </binding> 
</basicHttpBinding> 

मैं JAX-WS का उपयोग कर रहा हूं। क्या आप मुझे जावा क्लाइंट में उपयोगकर्ता नाम और पासवर्ड सेट करने का तरीका दिखाते हुए एक कोड स्निपेट दे सकते हैं?

मैं इस की कोशिश की है:

Map<String, Object> reqContext = ((BindingProvider) port).getRequestContext(); 
reqContext.put(BindingProvider.USERNAME_PROPERTY, "username"); 
reqContext.put(BindingProvider.PASSWORD_PROPERTY, "password"); 

लेकिन यह काम नहीं किया। मैंने यह भी कोशिश की है:

Map<String, Object> reqContext = ((BindingProvider) port).getRequestContext(); 
reqContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://username:[email protected]:8090/MyService"); 

अभी भी कोई सफलता नहीं है।

धन्यवाद, राफाल

+0

+1 एक अच्छी तरह से शब्दों और अच्छी तरह से स्वरूपित प्रश्न के लिए। –

उत्तर

2

ऊप्स! क्षमा करें ...

पहला समाधान काम करता है, लेकिन मैंने डब्ल्यूसीएफ सेवा कॉन्फ़िगरेशन में गलती की है। तो मूल रूप से यदि आप समान समस्या यह थक है:

Map<String, Object> reqContext = ((BindingProvider) port).getRequestContext(); 
reqContext.put(BindingProvider.USERNAME_PROPERTY, "username"); 
reqContext.put(BindingProvider.PASSWORD_PROPERTY, "password"); 

सादर, राफाल

+0

डब्ल्यूसीएफ कॉन्फ़िगरेशन में आपने क्या गलती की। मैं एक ही दृष्टिकोण का उपयोग कर जैक्स-डब्ल्यूएस क्लाइंट का उपयोग कर डब्ल्यूसीएफ सेवा को कॉल करने की कोशिश कर रहा हूं, लेकिन मुझे 401 अनथोर त्रुटि मिल रही है, जहां .net क्लाइंट के माध्यम से काम करता है – Abs

संबंधित मुद्दे