diff --git a/src/data/module.xml b/src/data/module.xml
index 2196eb2..4108fc2 100644
--- a/src/data/module.xml
+++ b/src/data/module.xml
@@ -1,7 +1,7 @@
 <module name="savan" class="mod_savan">
    <!-- Resource parameters -->
    <!-- savan_storage could be one of inmemory, sqlite and service-->
-   <parameter name="savan_resource" locked="false">/tmp/savan_db</parameter>
+   <!--parameter name="savan_resource" locked="false">/tmp/savan_db</parameter>-->
    <!--parameter name="savan_resource" locked="false">http://localhost:9763/registry</parameter>
    <parameter name="username" locked="false">admin</parameter>
    <parameter name="password" locked="false">admin</parameter-->
diff --git a/src/subs_mgrs/registry/subs_mgr.c b/src/subs_mgrs/registry/subs_mgr.c
index 2b7056d..f81f09b 100644
--- a/src/subs_mgrs/registry/subs_mgr.c
+++ b/src/subs_mgrs/registry/subs_mgr.c
@@ -143,7 +143,7 @@
     memset ((void *) subsmgrimpl, 0, sizeof(savan_registry_subs_mgr_t));
 
     subsmgrimpl->remote_registry = NULL;
-    subsmgrimpl->reg_url = axutil_strdup(env, savan_util_get_resource_connection_string(env, conf));
+    subsmgrimpl->reg_url = savan_util_get_resource_connection_string(env, conf);
     subsmgrimpl->username = axutil_strdup(env, savan_util_get_resource_username(env, conf));
     subsmgrimpl->password = axutil_strdup(env, savan_util_get_resource_password(env, conf));
     subsmgrimpl->conf = conf;
diff --git a/src/subs_mgrs/service/subs_mgr.c b/src/subs_mgrs/service/subs_mgr.c
index 2ca478a..9709ca6 100644
--- a/src/subs_mgrs/service/subs_mgr.c
+++ b/src/subs_mgrs/service/subs_mgr.c
@@ -159,7 +159,7 @@
 
     memset ((void *) subs_mgr_impl, 0, sizeof(savan_service_subs_mgr_t));
 
-    subs_mgr_impl->subs_mgr_url = axutil_strdup(env, savan_util_get_resource_connection_string(env, conf));
+    subs_mgr_impl->subs_mgr_url = savan_util_get_resource_connection_string(env, conf);
     subs_mgr_impl->conf = conf;
     subs_mgr_impl->subs_mgr.ops = &subs_mgr_ops;
 
diff --git a/src/subs_mgrs/sqlite/subs_mgr.c b/src/subs_mgrs/sqlite/subs_mgr.c
index 892e030..1b19c21 100644
--- a/src/subs_mgrs/sqlite/subs_mgr.c
+++ b/src/subs_mgrs/sqlite/subs_mgr.c
@@ -151,7 +151,7 @@
 
     memset ((void *) subs_mgr_impl, 0, sizeof(savan_sqlite_subs_mgr_t));
 
-    subs_mgr_impl->dbname = axutil_strdup(env, savan_util_get_resource_connection_string(env, conf));
+    subs_mgr_impl->dbname = savan_util_get_resource_connection_string(env, conf);
     subs_mgr_impl->conf = conf;
     subs_mgr_impl->subs_mgr.ops = &subs_mgr_ops;
 
diff --git a/src/util/savan_util.c b/src/util/savan_util.c
index 3db7ae4..595dc8a 100644
--- a/src/util/savan_util.c
+++ b/src/util/savan_util.c
@@ -326,7 +326,7 @@
     const axutil_env_t *env,
     axis2_conf_t *conf)
 {
-    axis2_char_t *resource_str = "./savan_db";
+    axis2_char_t *resource_str = NULL;
     axis2_module_desc_t *module_desc = NULL;
     axutil_qname_t *qname = NULL;
 
@@ -338,11 +338,26 @@
         resource_param = axis2_module_desc_get_param(module_desc, env, SAVAN_RESOURCE);
         if(resource_param)
         {
-            resource_str = (axis2_char_t *) axutil_param_get_value(resource_param, env);
+            resource_str = axutil_strdup(
+                env, (axis2_char_t *) axutil_param_get_value(resource_param, env));
         }
     }
     axutil_qname_free(qname, env);
     
+    if(!resource_str)
+    {
+        axis2_char_t *home = NULL;
+        home = AXIS2_GETENV("AXIS2C_HOME");
+        if(home)
+        {
+            resource_str = axutil_stracat(env, home, "/savan_db");
+        }
+        else
+        {
+            resource_str = axutil_strdup(env, "./savan_db");
+        }
+    }
+
     return resource_str;
 }
 
