[RESOLVIDO] Consumir serviço autenticado por JDBCRealm
1 resposta
phfaustino
Senhores, estou com o seguinte problema, tenho um Web Service onde a autenticação é deixada a cargo do JDBCRealm. Preciso consumir um serviço, porém não sei como enviar usuário e senha quando estou em uma classe normal. Consumir através de uma servlet é fácil:
public testservice.TestWS getTestWSPort() {
testservice.TestWS port = service.getTestWSPort();
((BindingProvider)port).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "zezim");
((BindingProvider)port).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "123");
return port;
}
Porém, se eu tiver em uma classe normal eu não consigo autenticar desta maneira…
Se alguém tiver um caminho diz ae!
[ ]'s
Consegui!
Quando geramos um Web Service Client no eclipse são geradas automaticamente algumas classes.
No nosso caso, precisamos alterar a seguinte classe xxxPortBindingStub (xxx = nome do seu serviço). Nesta classe temos todos os métodos disponíveis no nosso serviço, e são nestes que devemos inserir apenas mais duas linhas de código para que possamos enviar User / Password para sermos autenticados: