Author: ruchithf
Date: Sat Jul  7 01:33:33 2007
New Revision: 554163

URL: http://svn.apache.org/viewvc?view=rev&rev=554163
Log:
Applied a patch from Amila on policy validation - Thanks Amila
Fixed a typo
Updated the neethi version to SNAPSHOT


Modified:
    
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/ValidatorData.java
    
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
    
webservices/rampart/trunk/java/modules/rampart-trust/src/main/java/org/apache/rahas/client/STSClient.java
    webservices/rampart/trunk/java/pom.xml

Modified: 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/ValidatorData.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/ValidatorData.java?view=diff&rev=554163&r1=554162&r2=554163
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/ValidatorData.java
 (original)
+++ 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/ValidatorData.java
 Sat Jul  7 01:33:33 2007
@@ -22,8 +22,10 @@
 import org.apache.xml.security.utils.EncryptionConstants;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
 
 import java.util.ArrayList;
+import java.util.List;
 
 public class ValidatorData {
 
@@ -37,34 +39,39 @@
     }
     
     private void extractEncryptedPartInformation() {
-        Node start = rmd.getDocument().getDocumentElement();
-        while(start != null) {
-            Element elem = (Element) WSSecurityUtil.findElement(start, 
-                    EncryptionConstants._TAG_ENCRYPTEDDATA, 
WSConstants.ENC_NS);
-            if(elem != null) {
-                Element parentElem = (Element)elem.getParentNode();
-                if(parentElem != null && 
parentElem.getLocalName().equals(SOAP11Constants.BODY_LOCAL_NAME) &&
-                        
parentElem.getNamespaceURI().equals(rmd.getSoapConstants().getEnvelopeURI())) {
-                    this.bodyEncrDataId = elem.getAttribute("Id");
-                } else {
-                    encryptedDataRefIds.add(elem.getAttribute("Id"));
-                }
-                
-                if(elem.getNextSibling() != null) {
-                    start = elem.getNextSibling();
-                } else {
-                    start = elem.getParentNode().getNextSibling();
-                }
-            } else {
-                if(start.getNextSibling() != null) {
-                    start = start.getNextSibling();
+        Element start = rmd.getDocument().getDocumentElement();
+        if(start != null) {
+            extractEncryptedPartInformation(start);
+        }
+        
+    }
+    
+    private void extractEncryptedPartInformation(Element parent) {
+
+        NodeList childNodes = parent.getChildNodes();
+        Node node;
+        for (int i = 0; i < childNodes.getLength(); i++) {
+            node = childNodes.item(i);
+            if (node instanceof Element) {
+                Element elem = (Element) node;
+                if (elem.getNamespaceURI().equals(WSConstants.ENC_NS)
+                        && elem.getLocalName().equals(
+                                EncryptionConstants._TAG_ENCRYPTEDDATA)) {
+                    if (parent != null
+                            && parent.getLocalName().equals(
+                                    SOAP11Constants.BODY_LOCAL_NAME)
+                            && parent.getNamespaceURI().equals(
+                                    rmd.getSoapConstants().getEnvelopeURI())) {
+                        this.bodyEncrDataId = elem.getAttribute("Id");
+                    } else {
+                        encryptedDataRefIds.add(elem.getAttribute("Id"));
+                    }
+                    break;
                 } else {
-                    start = start.getParentNode().getNextSibling();
+                    extractEncryptedPartInformation(elem);
                 }
             }
-            
         }
-        
     }
 
     public ArrayList getEncryptedDataRefIds() {

Modified: 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java?view=diff&rev=554163&r1=554162&r2=554163
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
 (original)
+++ 
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
 Sat Jul  7 01:33:33 2007
@@ -15,14 +15,6 @@
  */
 package org.apache.rampart.policy.builders;
 
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.PrintStream;
-import java.util.Iterator;
-import java.util.Properties;
-
-import javax.xml.namespace.QName;
-
 import org.apache.axiom.om.OMAttribute;
 import org.apache.axiom.om.OMElement;
 import org.apache.neethi.Assertion;
@@ -30,6 +22,11 @@
 import org.apache.neethi.builders.AssertionBuilder;
 import org.apache.rampart.policy.model.RampartConfig;
 import org.apache.rampart.policy.model.SSLConfig;
+
+import javax.xml.namespace.QName;
+
+import java.util.Iterator;
+import java.util.Properties;
 
 public class SSLConfigBuilder implements AssertionBuilder {
 

Modified: 
webservices/rampart/trunk/java/modules/rampart-trust/src/main/java/org/apache/rahas/client/STSClient.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-trust/src/main/java/org/apache/rahas/client/STSClient.java?view=diff&rev=554163&r1=554162&r2=554163
==============================================================================
--- 
webservices/rampart/trunk/java/modules/rampart-trust/src/main/java/org/apache/rahas/client/STSClient.java
 (original)
+++ 
webservices/rampart/trunk/java/modules/rampart-trust/src/main/java/org/apache/rahas/client/STSClient.java
 Sat Jul  7 01:33:33 2007
@@ -303,7 +303,7 @@
 
         } else {
             if (this.requestorEntropy != null) {
-                //Use requestor entropy as the key
+                //Use requester entropy as the key
                 secret = this.requestorEntropy;
             }
         }

Modified: webservices/rampart/trunk/java/pom.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/pom.xml?view=diff&rev=554163&r1=554162&r2=554163
==============================================================================
--- webservices/rampart/trunk/java/pom.xml (original)
+++ webservices/rampart/trunk/java/pom.xml Sat Jul  7 01:33:33 2007
@@ -413,7 +413,7 @@
         <opensaml.version>1.1</opensaml.version>
 
         <XmlSchema.version>1.3.1</XmlSchema.version>
-        <neethi.version>2.0.1</neethi.version>
+        <neethi.version>SNAPSHOT</neethi.version>
 
         <xbean.version>2.1.0</xbean.version>
         <woden.version>1.0-incubating-M7a</woden.version>


Reply via email to