How do I consume a web service protected with HTTP basic authentication using the CXF framework?

ScArcher2 picture ScArcher2 · Apr 1, 2009 · Viewed 31.5k times · Source

I tried to get it to work using the CXF User Guide, but I've had no luck.

I'm trying to call the web service using java code.

Answer

Daniel Kulp picture Daniel Kulp · Apr 1, 2009

This is covered by the JAX-WS Specification. Basically, set the username/password as properties on the request context:

((BindingProvider)proxy).getRequestContext().put(
    BindingProvider.USERNAME_PROPERTY, "joe");
((BindingProvider)proxy).getRequestContext().put(
    BindingProvider.PASSWORD_PROPERTY, "pswd");

The runtime puts them into the HTTP header.