diff --git a/ui-admin/src/js/components/database/DatabaseComponent.jsx b/ui-admin/src/js/components/database/DatabaseComponent.jsx
index 3aad31dd2f06934478a79661dfb6459fecf17d22..66acdac7eecca70ed9666cf509baecc64d3a6fdb 100644
--- a/ui-admin/src/js/components/database/DatabaseComponent.jsx
+++ b/ui-admin/src/js/components/database/DatabaseComponent.jsx
@@ -79,7 +79,7 @@ class DatabaseComponent extends React.PureComponent {
 
     return this.state.showDataBrowser ? (
       <DataBrowser
-        id={object.id}
+        id={object.type + '-' + object.id}
         viewType='list'
         sessionToken={AppController.getInstance().getSessionToken()}
       />
diff --git a/ui-admin/src/js/components/database/data-browser/DataBrowser.jsx b/ui-admin/src/js/components/database/data-browser/DataBrowser.jsx
index 664db7a7363518f9d3530ed134f0262e421a9831..cbb8c988c80b3e91c9eac032bd7fd79a5a56366b 100644
--- a/ui-admin/src/js/components/database/data-browser/DataBrowser.jsx
+++ b/ui-admin/src/js/components/database/data-browser/DataBrowser.jsx
@@ -123,9 +123,9 @@ class DataBrowser extends React.Component {
     super(props, context)
     autoBind(this)
 
-    const { sessionToken, controller } = this.props
+    const { sessionToken, controller, id } = this.props
 
-    this.controller = controller || new DataBrowserController()
+    this.controller = controller || new DataBrowserController(id)
     this.controller.attach(this)
     this.datastoreServer = new DataStoreServer(
       'http://localhost:8085',
@@ -142,6 +142,7 @@ class DataBrowser extends React.Component {
       path: '/'
     }
   }
+
   handleViewTypeChange(viewType) {
     this.setState({ viewType })
   }
@@ -212,13 +213,13 @@ class DataBrowser extends React.Component {
     const gbytes = mbytes / 1024.0
     if (gbytes > 1.0) {
       size = gbytes
-      unit = "Gb"
+      unit = "GB"
     } else if (mbytes > 1.0) {
       size = mbytes
-      unit = "Mb"
+      unit = "MB"
     } else if (kbytes > 1.0) {
       size = kbytes
-      unit = "kb"
+      unit = "kB"
     } else {
       size = bytes
       unit = "bytes"
@@ -227,7 +228,7 @@ class DataBrowser extends React.Component {
   }
 
   render() {
-    const { classes, sessionToken } = this.props
+    const { classes, sessionToken, id } = this.props
     const {
       viewType,
       files,
@@ -249,6 +250,7 @@ class DataBrowser extends React.Component {
           multiselectedFiles={multiselectedFiles}
           datastoreServer={this.datastoreServer}
           sessionToken={sessionToken}
+          owner={id}
           path={path}
         />
         <NavigationBar
diff --git a/ui-admin/src/js/components/database/data-browser/DataBrowserController.js b/ui-admin/src/js/components/database/data-browser/DataBrowserController.js
index 707328c1ee6952439eca89358d935ed3318fb6df..f7301638b9937ea3b561a1c7e1dc8a03876fcdd1 100644
--- a/ui-admin/src/js/components/database/data-browser/DataBrowserController.js
+++ b/ui-admin/src/js/components/database/data-browser/DataBrowserController.js
@@ -21,12 +21,11 @@ const MAX_READ_SIZE_IN_BYTES = 1024 * 1024
 
 export default class DataBrowserController extends ComponentController {
 
-  constructor() {
+  constructor(owner) {
     super()
     autoBind(this)
 
-    // TODO: change it to sample permId
-    this.owner = 'demo-sample'
+    this.owner = owner
     this.gridController = null
     this.path = ''
     this.fileNames = []
@@ -37,6 +36,12 @@ export default class DataBrowserController extends ComponentController {
   }
 
   async listFiles() {
+    // TODO: resolve this problematic issue of having to create a folder just in case
+    try {
+      await this.component.datastoreServer.create(this.owner, this.path, true);
+    } catch (e) {
+    }
+
     const data = await this.component.datastoreServer.list(this.owner, this.path, false)
     if (!data.error) {
       const results = data.result[1]
diff --git a/ui-admin/src/js/components/database/data-browser/LeftToolbar.jsx b/ui-admin/src/js/components/database/data-browser/LeftToolbar.jsx
index 2766993fcae28d03eb8418012a22015f1709d829..3e1239cafcca36b37e7d83da0f6ce7268282919c 100644
--- a/ui-admin/src/js/components/database/data-browser/LeftToolbar.jsx
+++ b/ui-admin/src/js/components/database/data-browser/LeftToolbar.jsx
@@ -234,6 +234,7 @@ class LeftToolbar extends React.Component {
       multiselectedFiles,
       datastoreServer,
       sessionToken,
+      owner,
       path
     } = this.props
     const {
@@ -372,6 +373,7 @@ class LeftToolbar extends React.Component {
           content={messages.get(messages.FILE_OR_FILES, multiselectedFiles.size)}
           datastoreServer={datastoreServer}
           sessionToken={sessionToken}
+          owner={owner}
           path={path}
           multiselectedFiles={multiselectedFiles}
           onCancel={this.handleLocationCancel}
@@ -411,7 +413,7 @@ class LeftToolbar extends React.Component {
   render() {
     logger.log(logger.DEBUG, 'LeftToolbar.render')
 
-    const { multiselectedFiles, classes } = this.props
+    const { multiselectedFiles, classes, owner } = this.props
     const { loading } = this.state
 
     return ([
diff --git a/ui-admin/src/js/components/database/data-browser/LocationDialog.jsx b/ui-admin/src/js/components/database/data-browser/LocationDialog.jsx
index a5dcc66a1c7630c4e4cf91bf34033e924f7218d3..a4332823449188aec55c2f2fe1aad3570a212c35 100644
--- a/ui-admin/src/js/components/database/data-browser/LocationDialog.jsx
+++ b/ui-admin/src/js/components/database/data-browser/LocationDialog.jsx
@@ -45,9 +45,9 @@ class LocationDialog extends React.Component {
     super(props)
     autoBind(this)
 
-    const { path, sessionToken, datastoreServer } = this.props
+    const { path, sessionToken, datastoreServer, owner } = this.props
 
-    this.controller = new DataBrowserController()
+    this.controller = new DataBrowserController(owner)
     this.controller.attach(this)
     this.datastoreServer = datastoreServer
     this.controller.setSessionToken(sessionToken)
diff --git a/ui-admin/src/js/components/database/data-browser/Toolbar.jsx b/ui-admin/src/js/components/database/data-browser/Toolbar.jsx
index 59fa31a0203f0f5d163ba6f738afad02f6710967..bb80165417814fb5f8077bf25bd1417515bac1eb 100644
--- a/ui-admin/src/js/components/database/data-browser/Toolbar.jsx
+++ b/ui-admin/src/js/components/database/data-browser/Toolbar.jsx
@@ -59,6 +59,7 @@ class Toolbar extends React.Component {
       multiselectedFiles,
       datastoreServer,
       sessionToken,
+      owner,
       path
     } = this.props
     return (
@@ -68,6 +69,7 @@ class Toolbar extends React.Component {
           multiselectedFiles={multiselectedFiles}
           datastoreServer={datastoreServer}
           sessionToken={sessionToken}
+          owner={owner}
           path={path}
           controller={this.controller}
         />