diff --git a/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java b/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java index c2a8fbf661..a3a6dc7bc3 100644 --- a/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java +++ b/core/core-backend/src/main/java/io/dataease/datasource/server/DatasourceServer.java @@ -12,6 +12,7 @@ import io.dataease.api.ds.DatasourceApi; import io.dataease.api.ds.vo.*; import io.dataease.api.permissions.relation.api.RelationApi; import io.dataease.commons.constants.TaskStatus; +import io.dataease.constant.DataSourceType; import io.dataease.constant.LogOT; import io.dataease.constant.LogST; import io.dataease.dataset.manage.DatasetDataManage; @@ -1296,13 +1297,16 @@ public class DatasourceServer implements DatasourceApi { Object resObj = null; try { Method method = getMethod(dsType, methodName, classes); - if (object instanceof DatasourceRequest) { + if (object instanceof DatasourceRequest && dsType.equals(DataSourceType.APILark.name())) { Class clazz = Class.forName(DatasourceRequest.class.getName()); Method setToken = clazz.getMethod("setToken", String.class); setToken.invoke(object, dataSourceManage.getTenantAccessToken()); } resObj = method.invoke(null, object); } catch (Exception e) { + if (e.getCause() != null && e.getCause() instanceof DEException) { + DEException.throwException(e.getCause().getMessage()); + } DEException.throwException(e); } return resObj;