2011-01-05 14 views
5

मैं इस तरह प्रॉक्सी बनाने के लिए JAXRSClientFactory.create विधि का उपयोग करें:CXF ग्राहक प्राधिकरण मुद्दा

IMyService myService 
= JAXRSClientFactory.create("http://myserviceurl/", IMyService.class, "login1", "pwd", null); 

और इस कोड काम ठीक।

उसके बाद मैं एक और पहचान के साथ इस सेवा का उपयोग करने की जरूरत है और मैं इस तरह एक और पहचान के साथ एक ही सेवा बनाने का प्रयास करें:

IMyService myNewService 
= JAXRSClientFactory.create("http://myserviceurl/", IMyService.class, "login2", "pwd", null); 

इस कोड काम है, लेकिन (गलत पहचान के साथ काम पहले सेवा से पहचान के साथ)। मुझे इसे बदलने का कोई तरीका नहीं मिला (रीसेट, या साफ़, या ऐसा कुछ)।

और एक और विवरण, केवल इस मुद्दे को पचाने प्राधिकरण के साथ। बुनियादी के साथ यह अच्छी तरह से काम करता है।

कोई भी इस मुद्दे के साथ मेरी सहायता कर सकता है।

धन्यवाद।

+0

मुझे लगता है कि 'myNewService' ही HTTP सत्र कि' myService' उपयोग कर रहा है, लेकिन मैं कैसे एक नए के लिए मजबूर करने के बारे में interwebs में कुछ भी नहीं मिल सकता है अधिवेशन – isalgueiro

उत्तर

0

पाचन लेख कैसे JAXRSClientFactory.create के साथ काम करता है? एपीआई के विवरण के अनुसार, क्लाइंट को मूल प्रमाणीकरण के साथ प्राप्त करने के लिए विधि का उपयोग किया जाता है।

0

हो सकता है कि कुछ इस तरह काम करना चाहिए:

Endpoint endpoint = WebClient.getConfig(client).getEndpoint(); 
AuthorizationPolicy policy = endpoint.getEndpointInfo().getExtensor(AuthorizationPolicy.class) 
policy.setUserName("login2"); 
संबंधित मुद्दे