Author: ruchith
Date: Mon Mar 31 02:17:26 2008
New Revision: 15374

Log:

Issuing information cards based on users' x.509 cert. This feature is not 
complete and  will not be exposed to the user.



Added:
   
trunk/solutions/identity/modules/identity-provider/conf/wso2is-user-certs.jks   
(contents, props changed)
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dao/UserPersonalCertificateDAO.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dataobject/UserPersonalCertificateDO.java
Modified:
   trunk/solutions/identity/modules/distribution/src/assemble/assembly-bin.xml
   trunk/solutions/identity/modules/identity-provider/conf/wsas-server.xml
   trunk/solutions/identity/modules/identity-provider/conf/wso2identity.hbm.xml
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/IdentityProviderConstants.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/KeystoreUtilAdmin.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/resources.properties
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/IdentityProviderData.java
   
trunk/solutions/identity/modules/identity-provider/src/test/resources/wso2identity.hbm.xml
   trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp

Modified: 
trunk/solutions/identity/modules/distribution/src/assemble/assembly-bin.xml
==============================================================================
--- trunk/solutions/identity/modules/distribution/src/assemble/assembly-bin.xml 
(original)
+++ trunk/solutions/identity/modules/distribution/src/assemble/assembly-bin.xml 
Mon Mar 31 02:17:26 2008
@@ -297,6 +297,13 @@
             <filtered>true</filtered>
             <destName>server.xml</destName>
         </file>
+
+        <file>
+            <source>../identity-provider/conf/wso2is-user-certs.jks</source>
+            
<outputDirectory>${identity.solution.home.dir}/conf</outputDirectory>
+            <filtered>false</filtered>
+        </file>
+
         <file>
             <source>../identity-provider/conf/log4j.properties</source>
             
<outputDirectory>${identity.solution.home.dir}/conf</outputDirectory>

Modified: 
trunk/solutions/identity/modules/identity-provider/conf/wsas-server.xml
==============================================================================
--- trunk/solutions/identity/modules/identity-provider/conf/wsas-server.xml     
(original)
+++ trunk/solutions/identity/modules/identity-provider/conf/wsas-server.xml     
Mon Mar 31 02:17:26 2008
@@ -204,6 +204,15 @@
             <Password>userRP</Password>
        </UserTrustedRPStore>
 
+       <UserPersonalCeritificateStore>
+            <Location>${wso2wsas.home}/conf/wso2is-user-certs.jks</Location>
+            <!-- Keystore type (JKS/PKCS12 etc.)-->
+            <Type>JKS</Type>
+            <!-- Keystore password-->
+            <Password>wso2is</Password>
+       </UserPersonalCeritificateStore>
+
+
         <!--
            The directory under which all other KeyStore files will be stored
         -->

Modified: 
trunk/solutions/identity/modules/identity-provider/conf/wso2identity.hbm.xml
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/conf/wso2identity.hbm.xml    
    (original)
+++ 
trunk/solutions/identity/modules/identity-provider/conf/wso2identity.hbm.xml    
    Mon Mar 31 02:17:26 2008
@@ -7,6 +7,21 @@
 
 
     <!-- #################################################### -->
+    <!-- #  UserPersonalCertificateDO(user_personal_certs)  # -->
+    <!-- #################################################### -->
+    <class 
name="org.wso2.solutions.identity.persistence.dataobject.UserPersonalCertificateDO"
+           table="user_personal_certs">
+        <id name="id" column="id">
+            <generator class="native"/>
+        </id>
+        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
+
+        <property name="alias" column="alias" not-null="true"/>
+        <property name="userId" column="user_id" not-null="true"/>
+    </class>
+
+
+    <!-- #################################################### -->
     <!-- #             UserTrustedRP(user_trusted_rp)                          
# -->
     <!-- #################################################### -->
     <class 
name="org.wso2.solutions.identity.persistence.dataobject.UserTrustedRPDO"
@@ -200,8 +215,8 @@
         <property name="simple" column="is_simple"/>
         <property name="userEditable" column="is_user_editable"/>
         <property name="attrId" column="attr_id"/>
-        <property name="supported" column="is_supported"/>
-        <property name="required" column="is_required"/>
+        <property name="supported" column="is_supported"/>
+        <property name="required" column="is_required"/>
         <property name="openIDTag" column="openid_tag"/>
         <many-to-one name="dialect" column="dialect_id" not-null="true" />
    </class>
@@ -253,7 +268,7 @@
         <property name="userId" column="user_Id" not-null="true"/>
         <property name="cardId" column="card_Id" not-null="true"/>
         <property name="dateIssued" column="date_Issued" not-null="true"/>
-        <property name="dateExpires" column="date_Expires" not-null="true"/>
+        <property name="dateExpires" column="date_Expires" not-null="true"/>
         <property name="openIDInfoCard" column="is_openid_infocard" 
not-null="true"/>
         <set name="tokens" lazy="true" cascade="all">
             <key column="card"/>
@@ -276,25 +291,25 @@
         <property name="dateExpires" column="date_expires" not-null="true"/>
        <property name="dateRevoked" column="date_revoked" not-null="true"/>
    </class>
-
-
-    <!-- #################################################### -->
-    <!-- ##### OpenIDUserRPDO(openid_user_rp)##### -->
-    <!-- #################################################### -->
-    <class 
name="org.wso2.solutions.identity.persistence.dataobject.OpenIDUserRPDO"
-           table="openid_user_rp">
-        <id name="id" column="id">
-            <generator class="native"/>
-        </id>
-        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
-        <property name="rpUrl" column="rp_url" not-null="true"/>
-        <property name="userName" column="user_name" not-null="true"/>
-        <property name="isTrustedAlways" column="is_trusted_always" 
not-null="true"/>
-        <property name="visitCount" column="visit_count" not-null="true"/>
-        <property name="defaultProfileName" column="default_profile_name" 
not-null="true"/>
-        <property name="lastVisit" column="last_visit" type="timestamp" 
not-null="true"/>
-    </class>
-
+
+
+    <!-- #################################################### -->
+    <!-- ##### OpenIDUserRPDO(openid_user_rp)##### -->
+    <!-- #################################################### -->
+    <class 
name="org.wso2.solutions.identity.persistence.dataobject.OpenIDUserRPDO"
+           table="openid_user_rp">
+        <id name="id" column="id">
+            <generator class="native"/>
+        </id>
+        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
+        <property name="rpUrl" column="rp_url" not-null="true"/>
+        <property name="userName" column="user_name" not-null="true"/>
+        <property name="isTrustedAlways" column="is_trusted_always" 
not-null="true"/>
+        <property name="visitCount" column="visit_count" not-null="true"/>
+        <property name="defaultProfileName" column="default_profile_name" 
not-null="true"/>
+        <property name="lastVisit" column="last_visit" type="timestamp" 
not-null="true"/>
+    </class>
+
 
     <!-- #################################################### -->
     <!-- ##### ParameterDO(any utility parameters needed)##### -->
@@ -309,6 +324,6 @@
         <property name="value" column="value"/>
    </class>
 
-
+
    
 </hibernate-mapping>

Added: 
trunk/solutions/identity/modules/identity-provider/conf/wso2is-user-certs.jks
==============================================================================
Binary file. No diff available.

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/IdentityProviderConstants.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/IdentityProviderConstants.java
 (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/IdentityProviderConstants.java
 Mon Mar 31 02:17:26 2008
@@ -211,6 +211,21 @@
          */
         public final static String IDP_STORE_TYPE = "Security.KeyStore.Type";
 
+        /**
+         * Location of the keystore used to store users' personal certificates
+         */
+        public final static String USER_PERSONAL_STORE_LOCATION = 
"Security.UserPersonalCeritificateStore.Location";
+        
+        /**
+         * Password of the keystore used to store users' personal certificates
+         */
+        public final static String USER_PERSONAL_STORE_PASSWORD = 
"Security.UserPersonalCeritificateStore.Password";
+        
+        /**
+         * Type of the keystore used to store users' personal certificates
+         */
+        public final static String USER_PERSONAL_STORE_TYPE = 
"Security.UserPersonalCeritificateStore.Type";
+        
     }
 
     /**

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/KeystoreUtilAdmin.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/KeystoreUtilAdmin.java
   (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/KeystoreUtilAdmin.java
   Mon Mar 31 02:17:26 2008
@@ -16,6 +16,7 @@
 
 package org.wso2.solutions.identity.admin;
 
+import org.apache.ws.security.util.UUIDGenerator;
 import org.wso2.solutions.identity.IdentityProviderConstants;
 import org.wso2.solutions.identity.IdentityProviderException;
 import org.wso2.utils.ServerConfiguration;
@@ -40,6 +41,12 @@
     private static KeyStore userRPTruststore = null;
     
     
+    /**
+     * Certificates of users used to obtain information cards backed by those
+     * certificates. 
+     */
+    private static KeyStore userPersonalCertificateStore = null;
+    
 
     /**
      * Provides the instance of the main keystore of the identity provider.
@@ -69,8 +76,15 @@
         return loadUserRPTrustStore();
     }
   
+    private KeyStore getUserPersonalCertStore() throws 
IdentityProviderException {
+        if(userPersonalCertificateStore != null) {
+            return userPersonalCertificateStore;
+        }
+        
+        return loadUserPersonalCertStore();
+    }
     
-    
+
     /**
      * Load the main keystore of the identity provider using the configuration
      * from the server.xml(org.wso2.util.ServerConfiguration).
@@ -133,7 +147,41 @@
         
     }
     
-    
+    /**
+     * Load the user personal certificate keystore of the identity provider 
+     * using the configuration from the 
server.xml(org.wso2.util.ServerConfiguration).
+     * @return A java.security.Keystore instance
+     * @throws IdentityProviderException
+     */
+    private KeyStore loadUserPersonalCertStore() throws 
IdentityProviderException {
+
+        ServerConfiguration serverConfig = ServerConfiguration.getInstance();
+        String storeFilePath = serverConfig
+                .getFirstProperty(IdentityProviderConstants.ServerConfig.
+                        USER_PERSONAL_STORE_LOCATION);
+        String type = serverConfig
+                .getFirstProperty(IdentityProviderConstants.ServerConfig.
+                        USER_PERSONAL_STORE_TYPE);
+        String passwd = serverConfig
+                .getFirstProperty(IdentityProviderConstants.ServerConfig.
+                        USER_PERSONAL_STORE_PASSWORD);
+
+        try {
+            FileInputStream is = new FileInputStream(storeFilePath);
+
+            userPersonalCertificateStore = KeyStore.getInstance(type);
+
+            userPersonalCertificateStore.load(is, passwd.toCharArray());
+            is.close();
+            return userPersonalCertificateStore;
+        } catch (Exception e) {
+            throw new IdentityProviderException("errorInKeystoreAccess",
+                    new String[] { storeFilePath }, e);
+        }
+        
+        
+    }
+        
     
     public boolean isCertExists(X509Certificate cert)
             throws IdentityProviderException {
@@ -302,4 +350,40 @@
         return alias;
     }
 
+
+    /**
+     * Imports the Certificate to user personal cert store.
+     * 
+     * @param cert
+     * @return
+     * @throws IdentityProviderException
+     */
+    public String importCertToUserPersonalCertStore(X509Certificate cert)
+            throws IdentityProviderException {
+        KeyStore store = getUserPersonalCertStore();
+        ServerConfiguration serverConfig = ServerConfiguration.getInstance();
+        String storeFilePath = serverConfig
+            
.getFirstProperty(IdentityProviderConstants.ServerConfig.USER_PERSONAL_STORE_LOCATION);
+        String passwd = serverConfig
+            
.getFirstProperty(IdentityProviderConstants.ServerConfig.USER_PERSONAL_STORE_PASSWORD);
+
+        String alias = null;
+        try {
+            alias = UUIDGenerator.getUUID();
+            store.setCertificateEntry(alias, cert);
+            FileOutputStream os = new FileOutputStream(storeFilePath);
+            store.store(os, passwd.toCharArray());
+            os.flush();
+            os.close();
+        } catch (Exception e) {
+            throw new IdentityProviderException("errorInKeystoreAccess",
+                    new String[] { storeFilePath }, e);
+        }
+        
+        //to reflect the changes
+        this.loadUserPersonalCertStore();
+        return alias;
+    }
+
+
 }

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java
  (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java
  Mon Mar 31 02:17:26 2008
@@ -138,6 +138,8 @@
         // TOOD : - cert, user
 
         X509V3Credential x509Cred = new X509V3Credential();
+        /////TODO : IMPORTANT Debug only
+        cert = "NQM0IBvuplAtETQvk+6gn8C13wE=";
         x509Cred.setBase64EncodedThumbprintValue(cert);
 
         UserCredential cred = new UserCredential(x509Cred);

Added: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dao/UserPersonalCertificateDAO.java
==============================================================================
--- (empty file)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dao/UserPersonalCertificateDAO.java
        Mon Mar 31 02:17:26 2008
@@ -0,0 +1,56 @@
+/*                                                                             
+ * Copyright 2005,2006 WSO2, Inc. http://www.wso2.org
+ *                                                                             
+ * Licensed under the Apache License, Version 2.0 (the "License");             
+ * you may not use this file except in compliance with the License.            
+ * You may obtain a copy of the License at                                     
+ *                                                                             
+ *      http://www.apache.org/licenses/LICENSE-2.0                             
+ *                                                                             
+ * Unless required by applicable law or agreed to in writing, software         
+ * distributed under the License is distributed on an "AS IS" BASIS,           
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.    
+ * See the License for the specific language governing permissions and         
+ * limitations under the License.                                              
+ */
+
+package org.wso2.solutions.identity.persistence.dao;
+
+import org.hibernate.Criteria;
+import org.hibernate.Session;
+import org.hibernate.Transaction;
+import org.hibernate.criterion.Expression;
+import org.wso2.solutions.identity.persistence.HibernateConfig;
+import 
org.wso2.solutions.identity.persistence.dataobject.UserPersonalCertificateDO;
+
+import java.util.List;
+
+public class UserPersonalCertificateDAO extends BaseDAO {
+
+    public UserPersonalCertificateDAO(HibernateConfig config) {
+        super(config);
+    }
+
+    public UserPersonalCertificateDO[] getAllCertificateAliases(String userId) 
{
+        Session session = hbConfig.getCurrentSession();
+        Transaction tx = session.beginTransaction();
+        try {
+            Criteria criteria = session
+                    .createCriteria(UserPersonalCertificateDO.class);
+            criteria.add(Expression.eq("userId", userId));
+            
+            List list =  criteria.list();
+            return (UserPersonalCertificateDO[]) list
+                    .toArray(new UserPersonalCertificateDO[list.size()]);
+        } catch (Throwable e) {
+            tx.rollback();
+            String msg = messages
+                    .getMessage("errorUserPersonalCertificate");
+            log.error(msg, e);
+            throw new RuntimeException(msg, e);
+        } finally {
+            hbConfig.closeSession();
+        }
+    }
+    
+}

Added: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dataobject/UserPersonalCertificateDO.java
==============================================================================
--- (empty file)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/persistence/dataobject/UserPersonalCertificateDO.java
  Mon Mar 31 02:17:26 2008
@@ -0,0 +1,51 @@
+/*                                                                             
+ * Copyright 2005,2006 WSO2, Inc. http://www.wso2.org
+ *                                                                             
+ * Licensed under the Apache License, Version 2.0 (the "License");             
+ * you may not use this file except in compliance with the License.            
+ * You may obtain a copy of the License at                                     
+ *                                                                             
+ *      http://www.apache.org/licenses/LICENSE-2.0                             
+ *                                                                             
+ * Unless required by applicable law or agreed to in writing, software         
+ * distributed under the License is distributed on an "AS IS" BASIS,           
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.    
+ * See the License for the specific language governing permissions and         
+ * limitations under the License.                                              
+ */
+
+package org.wso2.solutions.identity.persistence.dataobject;
+
+/**
+ * Data object to hold the alias of the users personal certificates.
+ *
+ */
+public class UserPersonalCertificateDO extends AbstractDataObject {
+    
+    /**
+     * Alias of the certificate in the keystore
+     */
+    private String alias;
+    
+    /**
+     * User identifier
+     */
+    private String userId;
+
+    public String getAlias() {
+        return alias;
+    }
+
+    public void setAlias(String alias) {
+        this.alias = alias;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+}

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/resources.properties
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/resources.properties
   (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/resources.properties
   Mon Mar 31 02:17:26 2008
@@ -86,6 +86,7 @@
 errorQuerryingRevokedInfoCardData = Error reading RevokedInfoCard data from 
database
 errorQuerryingUserAction = Error reading UserAction from database
 errorQuerryingVerifierServiceData = Error reading VerifierService data from 
database
+errorUserPersonalCertificate = Error reading User Personal Certificate 
information from database
 errorAccessActions = Error in accessing user actions from database
 errorQuerryingOpenIDUserRP = Error reading OpenID user RPs from database
 

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/IdentityProviderData.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/IdentityProviderData.java
  (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/IdentityProviderData.java
  Mon Mar 31 02:17:26 2008
@@ -405,6 +405,7 @@
                 RegisteredInfoCardInfoAdmin admin = new 
RegisteredInfoCardInfoAdmin();
                 RegisteredInfoCardInfoDO info = admin.getInfo(ppidValue);
                 if (info != null) {
+                    System.out.println(info.getIssuerInfo());
                     // XMLSignature sigObject = (XMLSignature)
                     // assertion.getNativeSignature();
                     // KeyInfo keyinfo = sigObject.getKeyInfo();

Modified: 
trunk/solutions/identity/modules/identity-provider/src/test/resources/wso2identity.hbm.xml
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/test/resources/wso2identity.hbm.xml
  (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/test/resources/wso2identity.hbm.xml
  Mon Mar 31 02:17:26 2008
@@ -7,6 +7,21 @@
 
 
     <!-- #################################################### -->
+    <!-- #  UserPersonalCertificateDO(user_personal_certs)  # -->
+    <!-- #################################################### -->
+    <class 
name="org.wso2.solutions.identity.persistence.dataobject.UserPersonalCertificateDO"
+           table="user_personal_certs">
+        <id name="id" column="id">
+            <generator class="native"/>
+        </id>
+        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
+
+        <property name="alias" column="alias" not-null="true"/>
+        <property name="userId" column="user_id" not-null="true"/>
+    </class>
+
+
+    <!-- #################################################### -->
     <!-- #             UserTrustedRP(user_trusted_rp)                          
# -->
     <!-- #################################################### -->
     <class 
name="org.wso2.solutions.identity.persistence.dataobject.UserTrustedRPDO"
@@ -200,8 +215,8 @@
         <property name="simple" column="is_simple"/>
         <property name="userEditable" column="is_user_editable"/>
         <property name="attrId" column="attr_id"/>
-        <property name="supported" column="is_supported"/>
-        <property name="required" column="is_required"/>
+        <property name="supported" column="is_supported"/>
+        <property name="required" column="is_required"/>
         <property name="openIDTag" column="openid_tag"/>
         <many-to-one name="dialect" column="dialect_id" not-null="true" />
    </class>
@@ -253,7 +268,7 @@
         <property name="userId" column="user_Id" not-null="true"/>
         <property name="cardId" column="card_Id" not-null="true"/>
         <property name="dateIssued" column="date_Issued" not-null="true"/>
-        <property name="dateExpires" column="date_Expires" not-null="true"/>
+        <property name="dateExpires" column="date_Expires" not-null="true"/>
         <property name="openIDInfoCard" column="is_openid_infocard" 
not-null="true"/>
         <set name="tokens" lazy="true" cascade="all">
             <key column="card"/>
@@ -276,25 +291,25 @@
         <property name="dateExpires" column="date_expires" not-null="true"/>
        <property name="dateRevoked" column="date_revoked" not-null="true"/>
    </class>
-
-
-    <!-- #################################################### -->
-    <!-- ##### OpenIDUserRPDO(openid_user_rp)##### -->
-    <!-- #################################################### -->
-    <class 
name="org.wso2.solutions.identity.persistence.dataobject.OpenIDUserRPDO"
-           table="openid_user_rp">
-        <id name="id" column="id">
-            <generator class="native"/>
-        </id>
-        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
-        <property name="rpUrl" column="rp_url" not-null="true"/>
-        <property name="userName" column="user_name" not-null="true"/>
-        <property name="isTrustedAlways" column="is_trusted_always" 
not-null="true"/>
-        <property name="visitCount" column="visit_count" not-null="true"/>
-        <property name="defaultProfileName" column="default_profile_name" 
not-null="true"/>
-        <property name="lastVisit" column="last_visit" type="timestamp" 
not-null="true"/>
-    </class>
-
+
+
+    <!-- #################################################### -->
+    <!-- ##### OpenIDUserRPDO(openid_user_rp)##### -->
+    <!-- #################################################### -->
+    <class 
name="org.wso2.solutions.identity.persistence.dataobject.OpenIDUserRPDO"
+           table="openid_user_rp">
+        <id name="id" column="id">
+            <generator class="native"/>
+        </id>
+        <property name="lastUpdatedTime" type="timestamp" 
column="c_last_updated" not-null="true"/>
+        <property name="rpUrl" column="rp_url" not-null="true"/>
+        <property name="userName" column="user_name" not-null="true"/>
+        <property name="isTrustedAlways" column="is_trusted_always" 
not-null="true"/>
+        <property name="visitCount" column="visit_count" not-null="true"/>
+        <property name="defaultProfileName" column="default_profile_name" 
not-null="true"/>
+        <property name="lastVisit" column="last_visit" type="timestamp" 
not-null="true"/>
+    </class>
+
 
     <!-- #################################################### -->
     <!-- ##### ParameterDO(any utility parameters needed)##### -->
@@ -309,6 +324,6 @@
         <property name="value" column="value"/>
    </class>
 
-
+
    
 </hibernate-mapping>

Modified: trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp
==============================================================================
--- trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp       
(original)
+++ trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp       
Mon Mar 31 02:17:26 2008
@@ -222,20 +222,6 @@
                                </td>
                        </tr>
                </table>
-        <table cellpadding="0" cellspacing="0" border="0" class="manage-table">
-            <tr>
-                <td>
-                    <p class="heading-link">Managed Information Cards for 
X.509v3 Certificates</p>
-                    <s:url id="downloadCardForX509Url" namespace="/" 
action="DownloadInfoCard">
-                        <s:param name="x509Certificate" value="ppid" />
-                    </s:url>
-                </td>
-                                
-            </tr>
-            <tr>
-                <td><s:a 
href="DownloadInfoCard.action?x509Certificate=NQM0IBvuplAtETQvk+6gn8C13wE=">Download
 Information Card</s:a></td>
-            </tr>
-        </table>
 
                <table cellpadding="0" cellspacing="0" border="0" 
class="manage-table">
                        <tr>
@@ -281,4 +267,4 @@
 <s:include value="footer.jsp" />
 
 </body>
-</html>
\ No newline at end of file
+</html>

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

Reply via email to