Author: dimuthul
Date: Wed Feb  6 20:36:30 2008
New Revision: 13363

Log:

Fixing the self issued card login issue.



Modified:
   
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenConsumer.java
   
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenVerifier.java
   
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/tokens/SAML1TokenHolder.java

Modified: 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenConsumer.java
==============================================================================
--- 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenConsumer.java
     (original)
+++ 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenConsumer.java
     Wed Feb  6 20:36:30 2008
@@ -18,6 +18,8 @@
 import org.apache.axiom.om.impl.builder.StAXOMBuilder;
 import org.apache.axiom.om.util.Base64;
 import org.apache.ws.security.util.DOM2Writer;
+import org.opensaml.DefaultBootstrap;
+import org.opensaml.xml.ConfigurationException;
 import org.w3c.dom.Element;
 import org.wso2.solutions.identity.IdentityConstants;
 import org.wso2.solutions.identity.relyingparty.RelyingPartyException;
@@ -28,6 +30,16 @@
 
     private static SAMLTokenConsumer consumer = null;
 
+    
+    static {
+        try {
+            DefaultBootstrap.bootstrap();
+        } catch (ConfigurationException e) {
+            e.printStackTrace();
+            throw new RuntimeException(e);
+        }
+    }
+    
     private SAMLTokenConsumer() {
 
     }

Modified: 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenVerifier.java
==============================================================================
--- 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenVerifier.java
     (original)
+++ 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/SAMLTokenVerifier.java
     Wed Feb  6 20:36:30 2008
@@ -17,6 +17,9 @@
 package org.wso2.solutions.identity.saml.relyingparty;
 
 import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
 import java.math.BigInteger;
 import java.net.URI;
 import java.security.KeyStore;
@@ -33,6 +36,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.ws.security.WSConstants;
 import org.apache.ws.security.processor.EncryptedKeyProcessor;
+import org.apache.ws.security.util.DOM2Writer;
 import org.apache.ws.security.util.WSSecurityUtil;
 import org.apache.xml.security.Init;
 import org.apache.xml.security.encryption.XMLCipher;
@@ -131,6 +135,18 @@
                 log.debug(messages.getMessage("verifyingDecryptedToken"));
             }
             
+            
+            if(true){
+                try {
+                    String val = DOM2Writer.nodeToString(decryptedElem);
+                    FileWriter writer = new FileWriter(new File("stuff.xml"));
+                    writer.write(val.toCharArray());
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+            
+            
             try {
                
                 String version = decryptedElem.getNamespaceURI();

Modified: 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/tokens/SAML1TokenHolder.java
==============================================================================
--- 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/tokens/SAML1TokenHolder.java
       (original)
+++ 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/saml/relyingparty/tokens/SAML1TokenHolder.java
       Wed Feb  6 20:36:30 2008
@@ -4,6 +4,8 @@
 import java.util.List;
 import java.util.Map;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.opensaml.saml1.core.Assertion;
 import org.opensaml.saml1.core.Attribute;
 import org.opensaml.saml1.core.AttributeStatement;
@@ -11,6 +13,7 @@
 import org.opensaml.xml.io.Unmarshaller;
 import org.opensaml.xml.io.UnmarshallerFactory;
 import org.opensaml.xml.io.UnmarshallingException;
+import org.opensaml.xml.schema.XSAny;
 import org.opensaml.xml.schema.XSString;
 import org.opensaml.xml.signature.Signature;
 import org.w3c.dom.Element;
@@ -21,6 +24,27 @@
     
     private boolean isMultipleValues = false;
     
+    private static Log log = LogFactory.getLog(SAML1TokenHolder.class);
+        
+    /*
+    static {
+        try {
+            Class clazz = Configuration.class;
+            XMLConfigurator configurator = new XMLConfigurator();
+            String[] providerConfigs = {"conf/saml1-assertion-config.xml"};
+            for (String config : providerConfigs) {
+                configurator.load(new FileInputStream(config));
+            }
+        }catch (FileNotFoundException e){
+            log.debug(e);
+            throw  new RuntimeException(e);
+        }catch (ConfigurationException e) {
+            log.debug(e);
+            throw  new RuntimeException(e);
+        }
+    }*/
+    
+    
     /**
      * Creates the SAML object from the element
      * This method must be called first
@@ -70,8 +94,14 @@
                     int count = 0;
                     StringBuffer buff = new StringBuffer();
                     while(ite.hasNext()){
-                        XSString obj = (XSString)ite.next();
-                        buff.append(obj.getValue());
+                        Object obj = ite.next();
+                        if(obj instanceof XSString){
+                            buff.append(((XSString)obj).getValue());
+                        }else if(obj instanceof XSAny) {
+                            XSAny any = (XSAny)obj;
+                            String value = any.getTextContent();
+                            buff.append(value);
+                        }
                         buff.append(",");
                         count++;
                     }

_______________________________________________
Identity-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/identity-dev

Reply via email to