Hi all,
I´m trying to implement WSS4J in our project.
First I tried to implement UsernameToken and with PasswordDigest and
PasswordText.
It works, by a little bit strange.
When I use PasswordDigest with wrong password, I get an exception (fine).
But when I use PasswordText with wrong password, i do not get any
exceptions. Why?
It is a bug, or is there something that I don´t understand.
I use wss4j 1.5.7
My PWCallbackClass looks like these
public void handle(Callback[] callbacks) throws IOException,
UnsupportedCallbackException {
for (Callback callback : callbacks) {
if(callback instanceof WSPasswordCallback){
WSPasswordCallback passwordCallback =
(WSPasswordCallback)callback;
String username = passwordCallback.getIdentifier();
String password = MyUtility.getPassword(username);
passwordCallback.setPassword(password);
}
}
}
Properties on client side:
call.setClientHandlers(new WSDoAllSender(), null);
call.setProperty(WSHandlerConstants.ACTION,
WSHandlerConstants.USERNAME_TOKEN);
call.setProperty(UsernameToken.PASSWORD_TYPE,WSConstants.PW_TEXT);
// or call.setProperty(UsernameToken.PASSWORD_TYPE,WSConstants.PW_DIGEST);
call.setProperty(WSHandlerConstants.USER, "user");
call.setProperty(WSHandlerConstants.PW_CALLBACK_CLASS,PasswordCallbackHandler.class.getName());
call.setProperty(WSHandlerConstants.MUST_UNDERSTAND, "true");
..and on server side:
action=UsernameToken
passwordCallbackClass=com.asy.callback.PasswordProvider
Can somebody help me?
--
Best regards
Vitali Heinrich