Author: indika
Date: Thu May  7 05:32:46 2009
New Revision: 772507

URL: http://svn.apache.org/viewvc?rev=772507&view=rev
Log:
Fix possible NPE (if programmatically create dsinfor)
Avoid serialization of null values 

Modified:
    
synapse/trunk/java/modules/utils/src/main/java/org/apache/synapse/commons/util/datasource/serializer/DataSourceInformationSerializer.java

Modified: 
synapse/trunk/java/modules/utils/src/main/java/org/apache/synapse/commons/util/datasource/serializer/DataSourceInformationSerializer.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/utils/src/main/java/org/apache/synapse/commons/util/datasource/serializer/DataSourceInformationSerializer.java?rev=772507&r1=772506&r2=772507&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/utils/src/main/java/org/apache/synapse/commons/util/datasource/serializer/DataSourceInformationSerializer.java
 (original)
+++ 
synapse/trunk/java/modules/utils/src/main/java/org/apache/synapse/commons/util/datasource/serializer/DataSourceInformationSerializer.java
 Thu May  7 05:32:46 2009
@@ -21,6 +21,7 @@
 import org.apache.synapse.commons.util.datasource.DataSourceConstants;
 import org.apache.synapse.commons.util.datasource.DataSourceInformation;
 import org.apache.synapse.commons.util.secret.SecretConfigurationConstants;
+import org.apache.synapse.commons.util.secret.SecretInformation;
 
 import java.util.Properties;
 
@@ -50,10 +51,23 @@
         String prefix = buffer.toString();
         addProperty(properties, prefix + DataSourceConstants.PROP_DSNAME,
                 information.getDatasourceName());
-        addProperty(properties, prefix + 
SecretConfigurationConstants.PROP_USER_NAME,
-                information.getSecretInformation().getUser());
-        addProperty(properties, prefix + 
SecretConfigurationConstants.PROP_PASSWORD,
-                information.getSecretInformation().getAliasPassword());
+
+        SecretInformation secretInformation = 
information.getSecretInformation();
+        if (secretInformation != null) {
+
+            String user = secretInformation.getUser();
+            if (user != null && !"".equals(user)) {
+                addProperty(properties, prefix + 
SecretConfigurationConstants.PROP_USER_NAME,
+                        user);
+            }
+
+            String password = secretInformation.getAliasPassword();
+            if (password != null && !"".equals(password)) {
+                addProperty(properties, prefix + 
SecretConfigurationConstants.PROP_PASSWORD,
+                        password);
+            }
+
+        }
         addProperty(properties, prefix + DataSourceConstants.PROP_MAXACTIVE,
                 String.valueOf(information.getMaxActive()));
         addProperty(properties, prefix + DataSourceConstants.PROP_MAXIDLE,


Reply via email to