First off, the following configuration was required:
WSSConfig wssConfig = WSSConfig.getDefaultWSConfig();
wssConfig.setWsseNS(WSConstants.WSSE_NS_OASIS_2002_07);
wssConfig.setWsuNS(WSConstants.WSU_NS_OASIS_2002_07);Next, I discovered that WSE 1.0 SP1 will accept the simple unqualified Password Type attribute
<wsse:Password Type="PasswordDigest">
but the WSS4J API does not seem to provide a way to accomplish this. I got the result I wanted with the following hack to line 332 of UsernameToken.java
-this.elementPassword.setAttribute("Type", WSConstants.PASSWORD_DIGEST);
+this.elementPassword.setAttribute("Type", WSConstants.PW_DIGEST);Which works because
WSConstants.PASSWORD_DIGEST = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest"
WSConstants.PW_DIGEST = "PasswordDigest"
Sorry but I do not think I am qualified to write nor am I set up to submit a proper patch for this. Thanks to Brian Nielsen for helping me get my client going though.
Tom Harding Palo Alto, CA
