You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by na...@apache.org on 2007/12/14 14:43:22 UTC
svn commit: r604191 -
/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
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());