diff --git a/src/main/java/org/gcube/portlets/user/td/csvimportwidget/client/progress/CSVImportProgressUpdater.java b/src/main/java/org/gcube/portlets/user/td/csvimportwidget/client/progress/CSVImportProgressUpdater.java index a4cbf3f..eb507c2 100644 --- a/src/main/java/org/gcube/portlets/user/td/csvimportwidget/client/progress/CSVImportProgressUpdater.java +++ b/src/main/java/org/gcube/portlets/user/td/csvimportwidget/client/progress/CSVImportProgressUpdater.java @@ -12,6 +12,9 @@ import org.gcube.portlets.user.td.gwtservice.shared.csv.CSVImportMonitor; import com.allen_sauer.gwt.log.client.Log; import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.rpc.AsyncCallback; +import com.sencha.gxt.widget.core.client.box.AlertMessageBox; +import com.sencha.gxt.widget.core.client.event.HideEvent; +import com.sencha.gxt.widget.core.client.event.HideEvent.HideHandler; /** * This {@link Timer} retrieves {@link OperationProgress} from the specified @@ -63,16 +66,7 @@ public class CSVImportProgressUpdater extends Timer { break; case FAILED: cancel(); - Log.info("CSV Import Failed"); - if (result.getError() != null) { - fireOperationFailed(result.getError(), - "Failed Client Library Import", result - .getError() - .getLocalizedMessage()); - } else { - fireOperationFailed(new Throwable("Failed"), - "Failed Client Library Import", "Error in import"); - } + errorMessage(result); break; case SUCCEDED: cancel(); @@ -92,6 +86,35 @@ public class CSVImportProgressUpdater extends Timer { } + protected void errorMessage(CSVImportMonitor result) { + Log.info("CSV Import Failed"); + Throwable th = null; + String failure = null; + String details = null; + if (result.getError() != null) { + th = result.getError(); + failure = "Failed Client Library Import"; + details = result.getError().getLocalizedMessage(); + } else { + th = new Throwable("Failed"); + failure = "Failed Client Library Import"; + details = "Error in import"; + } + fireOperationFailed(th, failure, details); + + AlertMessageBox d = new AlertMessageBox("Error in CSV Import", details); + d.addHideHandler(new HideHandler() { + + @Override + public void onHide(HideEvent event) { + // + } + + }); + d.show(); + + } + protected String getStack(Throwable e) { String message = e.getLocalizedMessage() + " ->
"; Throwable c = e.getCause();