Index: /trunk/grails-app/controllers/AssetDetailedController.groovy
===================================================================
--- /trunk/grails-app/controllers/AssetDetailedController.groovy	(revision 420)
+++ /trunk/grails-app/controllers/AssetDetailedController.groovy	(revision 421)
@@ -63,9 +63,11 @@
         def result = assetCsvService.importAssetTree(request)
 
-        if(!result.error)
+        if(!result.error) {
             flash.message = g.message(code: "asset.tree.import.success")
-        else
-            flash.errorMessage = g.message(code: result.error.code, args: result.error.args)
-
+            redirect(action:search)
+            return
+        }
+
+        flash.errorMessage = g.message(code: result.error.code, args: result.error.args)
         redirect(action: importAssetTree)
     }
Index: /trunk/grails-app/i18n/messages.properties
===================================================================
--- /trunk/grails-app/i18n/messages.properties	(revision 420)
+++ /trunk/grails-app/i18n/messages.properties	(revision 421)
@@ -3,8 +3,8 @@
 
 asset.tree.import.success=Asset tree imported.
-asset.tree.import.failure=Could not create asset tree from supplied file, failed on line {0}.
+asset.tree.import.failure=Could not create asset tree from supplied file, failed on line {0}, see {1}.
 
 inventory.import.success=Inventory imported.
-inventory.import.failure=Could not create inventory from supplied file, failed on line {0}.
+inventory.import.failure=Could not create inventory from supplied file, failed on line {0}, see {1}.
 
 asset.copy.method.required=Please select a copy method for sub items.
Index: /trunk/grails-app/services/AssetCsvService.groovy
===================================================================
--- /trunk/grails-app/services/AssetCsvService.groovy	(revision 420)
+++ /trunk/grails-app/services/AssetCsvService.groovy	(revision 421)
@@ -10,4 +10,6 @@
 
     boolean transactional = false
+
+    def g = new org.codehaus.groovy.grails.plugins.web.taglib.ApplicationTagLib()
 
     /**
@@ -22,4 +24,5 @@
             def kByteMultiplier = 1000
             def fileMaxSize = 500 * kByteMultiplier
+            def logFileLink = g.link(controller: "appCore", action: "appLog") {"log"}
 
             def multiPartFile = request.getFile('file')
@@ -155,5 +158,5 @@
                     if(!siteInstance.save()) {
                         log.error "Failed to create site on line: " + column.name + "(" + lineNumber + ")"
-                        return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                        return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                     }
                 }
@@ -174,5 +177,5 @@
                     if(!departmentInstance.save()) {
                         log.error "Failed to create department on line: " + column.name + "(" + lineNumber + ")"
-                        return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                        return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                     }
                 }
@@ -194,5 +197,5 @@
                     if(!sectionInstance.save()) {
                         log.error "Failed to create section on line: " + column.name + "(" + lineNumber + ")"
-                        return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                        return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                     }
                 }
@@ -213,5 +216,5 @@
                     if(!assetInstance.save()) {
                         log.error "Failed to create asset on line: " + column.name + "(" + lineNumber + ")"
-                        return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                        return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                     }
                 }
@@ -231,5 +234,5 @@
                     if(!assetInstance.save()) {
                         log.error "Failed to create assetSubItem on line: " + column.name + "(" + lineNumber + ")"
-                        return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                        return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                     }
                 }
@@ -250,5 +253,5 @@
                         if(!assetSubItemInstance.save()) {
                             log.error "Failed to create assetSubItem on line: " + column.name + "(" + lineNumber + ")"
-                            return fail(code: "asset.tree.import.failure", args: [lineNumber])
+                            return fail(code: "asset.tree.import.failure", args: [lineNumber, logFileLink])
                         }
                     }
