package camelinaction.wssecurity; import java.io.IOException; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.UnsupportedCallbackException; import org.apache.wss4j.common.ext.WSPasswordCallback; public class ServerPasswordCallback implements CallbackHandler { public ServerPasswordCallback() { } public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { WSPasswordCallback pc = (WSPasswordCallback) callbacks[0]; if ("jon".equals(pc.getIdentifier())) { pc.setPassword("secret"); } else { throw new IOException("Username incorrect!"); } } }