2010-08-27 2 views
1

Я пытаюсь вызвать веб-службу, которая имеет базовую HTTP-аутентификацию. Я создал код клиента с помощью инструмента WSDL2JAVA из AXIS.Базовая аутентификация HTTP для вызова WEBService

Но я не могу установить имя пользователя и пароль для вызова веб-службы.

Я постарался, чтобы в конечной точке URL, как

http://username:[email protected]/wsdl

Но я получаю сообщение об ошибке неавторизованного для этого. Я пытаюсь понять, как получить этот набор для моего вызова в Java-коде ....

Примечание: Я могу вызвать ту же услугу через soapUI и получить результаты. Я указал имя пользователя и пароль на вкладке «Авто» в запросе.

Вот некоторые фрагменты кода моего Окурка, если это Userful для вас

 _serviceClient = new org.apache.axis2.client.ServiceClient(configurationContext,_service); 


    _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(
      targetEndpoint)); 
    _serviceClient.getOptions().setUseSeparateListener(useSeparateListener); 

     //adding SOAP soap_headers 
    _serviceClient.addHeadersToEnvelope(env); 
    // set the message context with that soap envelope 
    _messageContext.setEnvelope(env); 

    // add the message contxt to the operation client 
    _operationClient.addMessageContext(_messageContext); 

    //execute the operation client 
    _operationClient.execute(true); 

Все входы будут высоко оценили !!

ответ

5
HttpTransportProperties.Authenticator 
         auth = new HttpTransportProperties.Authenticator(); 
      auth.setUsername("username"); 
      auth.setPassword("password"); 

_serviceClient.getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.BASIC_AUTHENTICATE,auth); 
+2

Спасибо! Это сработало. Я нашел только это, но _serviceClient.getOptions(). SetProperty (org.apache.axis2.transport.http.HTTPConstants.AUTHENTICATE, auth); –

+0

Кто-нибудь знает, почему учетные данные не могут быть помещены в URL-адрес конечной точки, как показано в вопросе? Вы можете сделать это с Apache HttpClient, и я думаю, что Axis использует это за кулисами ... – Kaitsu

Смежные вопросы