This is an automated email from the ASF dual-hosted git repository.

liugddx pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git


The following commit(s) were added to refs/heads/dev by this push:
     new 6060b13f9 fix class not found exception (#5063)
6060b13f9 is described below

commit 6060b13f9f9a223fd0a85c33d98e5f86df3aa254
Author: Guangdong Liu <804167...@qq.com>
AuthorDate: Wed Jul 12 12:39:08 2023 +0800

    fix class not found exception (#5063)
---
 .../engine/server/rest/RestHttpGetCommandProcessor.java    | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git 
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
 
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
index 1540f99c9..6c71ac2fe 100644
--- 
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
+++ 
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
@@ -22,6 +22,7 @@ import 
org.apache.seatunnel.shade.com.fasterxml.jackson.databind.JsonNode;
 import org.apache.seatunnel.shade.com.fasterxml.jackson.databind.ObjectMapper;
 
 import org.apache.seatunnel.engine.common.Constant;
+import 
org.apache.seatunnel.engine.common.loader.SeaTunnelChildFirstClassLoader;
 import org.apache.seatunnel.engine.core.dag.logical.LogicalDag;
 import org.apache.seatunnel.engine.core.job.JobImmutableInformation;
 import org.apache.seatunnel.engine.core.job.JobInfo;
@@ -42,6 +43,7 @@ import com.hazelcast.internal.json.JsonObject;
 import com.hazelcast.internal.json.JsonValue;
 import com.hazelcast.internal.util.JsonUtil;
 import com.hazelcast.internal.util.StringUtil;
+import com.hazelcast.jet.impl.execution.init.CustomClassLoadedObject;
 import com.hazelcast.map.IMap;
 import com.hazelcast.spi.impl.NodeEngine;
 
@@ -227,12 +229,14 @@ public class RestHttpGetCommandProcessor extends 
HttpCommandProcessor<HttpGetCom
                                         .getNodeEngine()
                                         .getSerializationService()
                                         
.toObject(jobInfo.getJobImmutableInformation()));
+
+        ClassLoader classLoader =
+                new 
SeaTunnelChildFirstClassLoader(jobImmutableInformation.getPluginJarsUrls());
         LogicalDag logicalDag =
-                this.textCommandService
-                        .getNode()
-                        .getNodeEngine()
-                        .getSerializationService()
-                        .toObject(jobImmutableInformation.getLogicalDag());
+                CustomClassLoadedObject.deserializeWithCustomClassLoader(
+                        
this.textCommandService.getNode().getNodeEngine().getSerializationService(),
+                        classLoader,
+                        jobImmutableInformation.getLogicalDag());
 
         String jobMetrics =
                 
getSeaTunnelServer().getCoordinatorService().getJobMetrics(jobId).toJsonString();

Reply via email to