Author: nandana Date: Fri Dec 14 05:43:21 2007 New Revision: 604191 URL: http://svn.apache.org/viewvc?rev=604191&view=rev Log: Fixed issue https://issues.apache.org/jira/browse/RAMPART-115.
Modified: webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java Modified: webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java?rev=604191&r1=604190&r2=604191&view=diff ============================================================================== --- webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java (original) +++ webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java Fri Dec 14 05:43:21 2007 @@ -21,6 +21,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.rahas.EncryptedKeyToken; +import org.apache.rahas.SimpleTokenStore; import org.apache.rahas.TrustException; import org.apache.rampart.RampartException; import org.apache.rampart.RampartMessageData; @@ -568,12 +569,29 @@ sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING); } + String sigTokId; + + if ( policyToken instanceof SecureConversationToken) { + OMElement ref = tok.getAttachedReference(); + if(ref == null) { + ref = tok.getUnattachedReference(); + } + + if (ref != null) { + sigTokId = SimpleTokenStore.getIdFromSTR(ref); + } else { + sigTokId = tok.getId(); + } + } else { + sigTokId = tok.getId(); + } + //Hack to handle reference id issues //TODO Need a better fix - String sigTokId = tok.getId(); if(sigTokId.startsWith("#")) { sigTokId = sigTokId.substring(1); } + sig.setCustomTokenId(sigTokId); sig.setSecretKey(tok.getSecret()); sig.setSignatureAlgorithm(rpd.getAlgorithmSuite().getAsymmetricSignature());