Created
February 23, 2023 03:06
-
-
Save jesuino/efbf7f993f1036bd16d7733ecface422 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/external/ExternalDataSetClientProvider.java b/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/external/ExternalDataSetClientProvider.java | |
index de98a704cc..f8a542f6bc 100644 | |
--- a/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/external/ExternalDataSetClientProvider.java | |
+++ b/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/external/ExternalDataSetClientProvider.java | |
@@ -162,13 +162,28 @@ public class ExternalDataSetClientProvider { | |
if (response.status == HttpResponseCodes.SC_OK) { | |
return register(def, callback, responseText, mimeType); | |
} else { | |
- return notAbleToRetrieveDataSet(def, callback); | |
+ var exception = buildExceptionForResponse(responseText, response); | |
+ return notAbleToRetrieveDataSet(def, callback, exception); | |
} | |
}, error -> notAbleToRetrieveDataSet(def, callback)); | |
}).catch_(e -> notAbleToRetrieveDataSet(def, callback)); | |
} | |
+ private Throwable buildExceptionForResponse(String responseText, Response response) { | |
+ var sb = new StringBuffer("The dataset URL is unreachable with status "); | |
+ sb.append(response.status); | |
+ sb.append(" - "); | |
+ sb.append(response.statusText); | |
+ | |
+ if (responseText != null && !responseText.trim().isEmpty()) { | |
+ sb.append("\n"); | |
+ sb.append("Response Text: "); | |
+ sb.append(responseText); | |
+ } | |
+ return new RuntimeException(sb.toString()); | |
+ } | |
+ | |
private IThenable<Object> register(ExternalDataSetDef def, | |
final DataSetReadyCallback callback, | |
final String responseText, | |
diff --git a/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/services/RuntimeDataSetClientServices.java b/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/services/RuntimeDataSetClientServices.java | |
index b6c9843083..a5f4345a43 100644 | |
--- a/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/services/RuntimeDataSetClientServices.java | |
+++ b/packages/dashbuilder/dashbuilder-runtime-parent/dashbuilder-runtime-client/src/main/java/org/dashbuilder/client/services/RuntimeDataSetClientServices.java | |
@@ -151,7 +151,7 @@ public class RuntimeDataSetClientServices implements DataSetClientServices { | |
@Override | |
public boolean onError(ClientRuntimeError error) { | |
- if (loader.isEditor()) { | |
+ if (loader.isEditor() || loader.isClient()) { | |
listener.onError(error); | |
} else { | |
DomGlobal.console.debug("Error retrieving dataset from client, trying from backend"); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment