When I change namespace to what you described, I get the exception provided below.
> BTW, signing the SOAP body should not fail. Is it a > very special SOAP > body you use? I agree, that the signing of the body should not fail. I suspect we may have violated a rule w/ our XML schema. The IFX schema is not anything special, just perhaps very complex. Now for the exception captured when trying to sign the username token: WSDoAllSender: Error during Signatur with UsernameToken secretorg.apache.ws.security.WSSecurityException: General securityerror (WSEncryptBody/WSSignEnvelope: Element to encrypt/sign not found: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0, UsernameToken) at org.apache.ws.axis.security.WSDoAllSender.performUT_SIGNAction(WSDoAllSender.java:512) at org.apache.ws.axis.security.WSDoAllSender.invoke(WSDoAllSender.java:336) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:127) at org.apache.axis.client.Call.invokeEngine(Call.java:2765) at org.apache.axis.client.Call.invoke(Call.java:2748) at org.apache.axis.client.Call.invoke(Call.java:1784) at samples.message.TestIFXMsg.doit(TestIFXMsg.java:162) at samples.message.TestIFXMsg.main(TestIFXMsg.java:184) [EMAIL PROTECTED] message]# My newly modified client-side .wsdd file w/ recommended namespace change follows: <requestFlow > <handler type="java:org.apache.ws.axis.security.WSDoAllSender" > <parameter name="action" value="UsernameTokenSignature Encrypt Timestamp"/> <parameter name="passwordCallbackClass" value="com.fnf.xes.framework.axis.security.client.PWClientCallback"/> <parameter name="passwordType" value="PasswordText" /> <parameter name="addUTElements" value="Nonce Created" /> <parameter name="encryptionPropFile" value="crypto.client.properties" /> <parameter name="encryptionKeyIdentifier" value="X509KeyIdentifier" /> <parameter name="encryptionUser" value="xespublickey" /> <parameter name="signatureParts" value="{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0}UsernameToken" /> <parameter name="encryptionParts" value="{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0}UsernameToken" /> </handler> <requestFlow> --- Werner Dittmann <[EMAIL PROTECTED]> wrote: > Shawn, > > IMO the namespace definition for UsernameToken has > changed for > OASIS WSS Version 1.0 (they changed the namespace > several times during > the specification work). The correct namespace is > now: > > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0 > > thus the sign element sould read > {Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0}UsernameToken > > Regards, > Werner > > BTW, signing the SOAP body should not fail. Is it a > very special SOAP > body you use? > > Werner > > > Shawn McKinney schrieb: > > I should point out that before posting on this > topic I > > scoured the web and Google for examples on how to > do > > this. I tried adding a signatureParts elements, > but > > got this exception: > > > > faultString: WSDoAllSender: Error during Signatur > > with UsernameToken > > secretorg.apache.ws.security.WSSecurityException: > > General security error > (WSEncryptBody/WSSignEnvelope: > > Element to encrypt/sign not found: > > > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd, > > UsernameToken) > > faultActor: > > faultNode: > > faultDetail: > > > > > {http://xml.apache.org/axis/}stackTrace:WSDoAllSender: > > Error during Signatur with UsernameToken > > secretorg.apache.ws.security.WSSecurityException: > > General security error > (WSEncryptBody/WSSignEnvelope: > > Element to encrypt/sign not found: > > > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd, > > UsernameToken) > > at > > > org.apache.ws.axis.security.WSDoAllSender.performUT_SIGNAction(WSDoAllSender.java:512) > > at > > > org.apache.ws.axis.security.WSDoAllSender.invoke(WSDoAllSender.java:336) > > at > > > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) > > at > > > org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) > > at > > > org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) > > at > > > org.apache.axis.client.AxisClient.invoke(AxisClient.java:127) > > at > > > org.apache.axis.client.Call.invokeEngine(Call.java:2765) > > at > > org.apache.axis.client.Call.invoke(Call.java:2748) > > at > > org.apache.axis.client.Call.invoke(Call.java:1784) > > at > > > samples.message.TestIFXMsg.doit(TestIFXMsg.java:155) > > at > > > samples.message.TestIFXMsg.main(TestIFXMsg.java:177) > > > > > > {http://xml.apache.org/axis/}hostname:redhat4hp > > > > > > The client-side .wsdd follows: > > > > <requestFlow > > > <handler > > > type="java:org.apache.ws.axis.security.WSDoAllSender" > > > > <parameter name="action" > > value="UsernameTokenSignature Encrypt"/> > > <parameter name="passwordCallbackClass" > > > value="com.fnf.xes.framework.axis.security.client.PWClientCallback"/> > > <parameter name="passwordType" > > value="PasswordText" /> > > <parameter name="addUTElements" value="Nonce > > Created" /> > > <parameter name="encryptionPropFile" > > value="crypto.client.properties" /> > > <parameter name="encryptionKeyIdentifier" > > value="X509KeyIdentifier" /> > > <parameter name="encryptionUser" > > value="xespublickey" /> > > <parameter name="signatureParts" > > > > > value="{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UsernameToken" > > /> > > <parameter name="encryptionParts" > > > > > value="{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}UsernameToken" > > /> > > </handler> > > > >
