Consumir Web Service WCF com Autenticação

1 resposta
F

Olá,

Na minha aplicação Java estou precisando consumir um Web Service que foi desenvolvido em .NET com WCF que faz autenticação no AD.
O problema é que na chamada desse serviço eu preciso passar as credencias (usuário e senha) para autenticação, só que esse serviço não recebe o usuário e senha como parâmetro normal.
Eu tenho um código em .NET que faz a chamada desse WS passando Credentials, ex:

ServiceAutenticar.Autenticar aut = new Autenticar.ServiceAutenticar.Autenticar();
System.Net.NetworkCredential cred = new System.Net.NetworkCredential();
aut.Credentials = cred;
cred.UserName = txtUsuario.Text;
cred.Password = txtPassword.Text;

Alguém saberia me dizer como poderia fazer isso no java ?

Já tentei fazer isso chamada, mas não funcionou:

call.setProperty(call.USERNAME_PROPERTY, "XXXXX");
call.setProperty(call.PASSWORD_PROPERTY, "XXXXX");

Alguém tem alguma idéia para resolver isso ?

Agradeço!

1 Resposta

G

Desenterrando este tópico.

Alguém tem alguma idéia como fazer isso ?
Estou com este problema e precisaria resolver…
Andei dando uma pesquisada e cheguei a um código:

org.tempuri.Service service = new org.tempuri.Service();
org.tempuri.VendGroupService port = service.getBasicHttpBindingVendGroupService();

((BindingProvider)port).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "XXX");
((BindingProvider)port).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "YYY");

port.create(parameters);

quando a classe chama o método “create” que pertence ao WebService, me retorna o seguinte erro:

org.tempuri.VendGroupServiceCreateAifFaultFaultFaultMessage: Falha na Solicitação. Consulte o Log de Exceções para obter detalhes.
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:130)
	at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
	at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
	at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:129)
	at $Proxy35.create(Unknown Source)
	at regras.VendGroupClient.create(VendGroupClient.java:35)
	at controller.DefaultController.ax(DefaultController.java:64)
	at controller.DefaultController.main(DefaultController.java:71)

Alguem poderia me dar um auxilio ?

Obrigado!

Criado 10 de março de 2010
Ultima resposta 29 de out. de 2012
Respostas 1
Participantes 2