Author: ruchithf
Date: Tue Nov  6 13:49:00 2007
New Revision: 592566

URL: http://svn.apache.org/viewvc?rev=592566&view=rev
Log:
Applied patch in RAMPART-104, Thanks Nandana

Modified:
    
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/AsymmetricBindingBuilder.java
    
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java

Modified: 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/AsymmetricBindingBuilder.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/AsymmetricBindingBuilder.java?rev=592566&r1=592565&r2=592566&view=diff
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/AsymmetricBindingBuilder.java
 (original)
+++ 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/AsymmetricBindingBuilder.java
 Tue Nov  6 13:49:00 2007
@@ -253,7 +253,8 @@
                 addSignatureConfirmation(rmd, sigParts);
             }
             
-            if((rmd.isInitiator() && rpd.getInitiatorToken() != null) || 
+            if(( sigParts.size() > 0 &&
+                    rmd.isInitiator() && rpd.getInitiatorToken() != null) || 
                     (!rmd.isInitiator() && rpd.getRecipientToken() != null)) {
                 this.doSignature(rmd);
             }
@@ -379,7 +380,8 @@
             addSignatureConfirmation(rmd, sigParts);
         }
 
-        if((rmd.isInitiator() && rpd.getInitiatorToken() != null) || 
+        if( sigParts.size() > 0 && 
+                (rmd.isInitiator() && rpd.getInitiatorToken() != null) || 
                 (!rmd.isInitiator() && rpd.getRecipientToken() != null)) {
             // Do signature
             this.doSignature(rmd);
@@ -500,7 +502,7 @@
                     this.setInsertionLocation(RampartUtil
                             .insertSiblingAfterOrPrepend(rmd,
                                     this.getInsertionLocation(),
-                                    encryptedKeyElement));
+                                    encryptedKeyElement)); 
                     
                                        
                     //Encrypt, get hold of the ref list and add it
@@ -508,6 +510,7 @@
                     
                     //Add internal refs
                     encryptedKeyElement.appendChild(refList);
+
 //                    RampartUtil.insertSiblingAfter(rmd,
 //                                                    
this.getInsertionLocation(),
 //                                                    refList);

Modified: 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java?rev=592566&r1=592565&r2=592566&view=diff
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
 (original)
+++ 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
 Tue Nov  6 13:49:00 2007
@@ -237,7 +237,9 @@
                 }
             }
             
-            RampartUtil.appendChildToSecHeader(rmd, refList);
+            if (encrParts.size() > 0 ) {
+                RampartUtil.appendChildToSecHeader(rmd, refList);
+            }
             
             if(dotDebug){
                t1 = System.currentTimeMillis();
@@ -580,18 +582,28 @@
                         .getRampartConfig(), rmd.getCustomClassLoader()));
                 
                 
-                //Encrypt, get hold of the ref list and add it
-                refList = encr.encryptForExternalRef(null, encrParts);
-
-                if(encrTokElem != null) {
-                    RampartUtil.insertSiblingAfter(rmd,
-                                                encrTokElem,
-                                                refList);
-                } else {
-                    RampartUtil.insertSiblingAfter(rmd,
-                            this.timestampElement,
-                            refList);
+                if (encrParts.size() > 0) {
+                
+                    //Encrypt, get hold of the ref list and add it
+                    refList = encr.encryptForExternalRef(null, encrParts);     
        
+                    
+                    if(this.timestampElement != null){
+                            this.setInsertionLocation(this.timestampElement);
+                    }else{
+                            this.setInsertionLocation(null);
+                    }                              
+    
+                    if(encrTokElem != null) {
+                        RampartUtil.insertSiblingAfter(rmd,
+                                                    encrTokElem,
+                                                    refList);
+                    } else {
+                        RampartUtil.insertSiblingAfter(rmd,
+                                this.timestampElement,
+                                refList);
+                    }
                 }
+                
             } catch (WSSecurityException e) {
                 throw new RampartException("errorInEncryption", e);
             }    


Reply via email to