2011-01-05 16 views
5

używam metody JAXRSClientFactory.create stworzyć serwer proxy tak:CXF kwestia autoryzacji klienta

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

i ta praca kod OK.

Po że muszę korzystać z tej usługi z kolejnych mandatów i staram się tworzyć taką samą usługę z innymi poświadczeniami, takich jak ten:

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

tę pracę kodu, ale praca z błędnych danych uwierzytelniających (z poświadczeniami z pierwszej usługi). Nie znalazłem żadnego sposobu, aby to zmienić (reset, wyczyść, lub coś podobnego).

I jeszcze jeden szczegół, ten problem dotyczy tylko autoryzacji digest. Z podstawowym działa dobrze.

Czy ktoś może mi pomóc z tym problemem.

Dzięki.

+0

myślę, że 'myNewService' używa tej samej sesji HTTP' myService', ale nie mogę znaleźć nic w interwebs o tym, jak życie nowa sesja – isalgueiro

Odpowiedz

0

W jaki sposób autog trawienie współpracuje z JAXRSClientFactory.create? Zgodnie z opisem interfejsu API metoda jest używana w celu uzyskania klienta z podstawowym uwierzytelnieniem.

0

Może coś jak to powinno działać:

Endpoint endpoint = WebClient.getConfig(client).getEndpoint(); 
AuthorizationPolicy policy = endpoint.getEndpointInfo().getExtensor(AuthorizationPolicy.class) 
policy.setUserName("login2"); 
Powiązane problemy