From 321ce372d23122c831582d46d88cb616e17c53f3 Mon Sep 17 00:00:00 2001 From: Redkale Date: Sun, 18 Dec 2022 23:52:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0"redkale.resource.skip.check"?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/redkale/mq/HttpMessageLocalClient.java | 5 ----- src/main/java/org/redkale/util/ResourceFactory.java | 4 +++- src/main/java/org/redkale/util/Traces.java | 3 ++- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/redkale/mq/HttpMessageLocalClient.java b/src/main/java/org/redkale/mq/HttpMessageLocalClient.java index 4cb95383c..f49cd2400 100644 --- a/src/main/java/org/redkale/mq/HttpMessageLocalClient.java +++ b/src/main/java/org/redkale/mq/HttpMessageLocalClient.java @@ -16,7 +16,6 @@ import org.redkale.boot.*; import org.redkale.convert.*; import org.redkale.convert.json.JsonConvert; import org.redkale.net.http.*; -import org.redkale.util.Traces; /** * 没有配置MQ且也没有ClusterAgent的情况下实现的默认HttpMessageClient实例 @@ -103,7 +102,6 @@ public class HttpMessageLocalClient extends HttpMessageClient { } HttpRequest req = new HttpMessageLocalRequest(context(), request, userid); HttpResponse resp = new HttpMessageLocalResponse(req, future); - Traces.computeCurrTraceid(request.getTraceid()); try { servlet.execute(req, resp); } catch (Exception e) { @@ -122,7 +120,6 @@ public class HttpMessageLocalClient extends HttpMessageClient { HttpRequest req = new HttpMessageLocalRequest(context(), request, userid); CompletableFuture future = new CompletableFuture(); HttpResponse resp = new HttpMessageLocalResponse(req, future); - Traces.computeCurrTraceid(request.getTraceid()); try { servlet.execute(req, resp); } catch (Exception e) { @@ -149,7 +146,6 @@ public class HttpMessageLocalClient extends HttpMessageClient { } HttpRequest req = new HttpMessageLocalRequest(context(), request, userid); HttpResponse resp = new HttpMessageLocalResponse(req, null); - Traces.computeCurrTraceid(request.getTraceid()); try { servlet.execute(req, resp); } catch (Exception e) { @@ -162,7 +158,6 @@ public class HttpMessageLocalClient extends HttpMessageClient { HttpDispatcherServlet ps = dispatcherServlet(); HttpRequest req = new HttpMessageLocalRequest(context(), request, userid); HttpResponse resp = new HttpMessageLocalResponse(req, null); - Traces.computeCurrTraceid(request.getTraceid()); ps.filterServletsByMmcTopic(topic).forEach(s -> { try { s.execute(req, resp); diff --git a/src/main/java/org/redkale/util/ResourceFactory.java b/src/main/java/org/redkale/util/ResourceFactory.java index 616fbdc54..4c2f30e05 100644 --- a/src/main/java/org/redkale/util/ResourceFactory.java +++ b/src/main/java/org/redkale/util/ResourceFactory.java @@ -38,6 +38,8 @@ public final class ResourceFactory { public static final String RESOURCE_PARENT_NAME = "$"; + private static final boolean skipCheckRequired = Boolean.getBoolean("redkale.resource.skip.check"); + private static final Logger logger = Logger.getLogger(ResourceFactory.class.getSimpleName()); private final ResourceFactory parent; @@ -828,7 +830,7 @@ public final class ResourceFactory { } } if (rs != null) field.set(srcObj, rs); - if (rs == null && rc.required()) { + if (rs == null && !skipCheckRequired && rc.required()) { throw new ResourceInjectException("resource(type=" + field.getType().getSimpleName() + ".class, field=" + field.getName() + ", name='" + rcname + "') must exists in " + srcObj.getClass().getName()); } } diff --git a/src/main/java/org/redkale/util/Traces.java b/src/main/java/org/redkale/util/Traces.java index cc8146c6c..83f2ddefc 100644 --- a/src/main/java/org/redkale/util/Traces.java +++ b/src/main/java/org/redkale/util/Traces.java @@ -16,7 +16,7 @@ import java.util.function.Supplier; */ public class Traces { - private static final boolean enable = !Boolean.getBoolean("redkale.trace.enable"); + private static final boolean enable = Boolean.getBoolean("redkale.trace.enable"); private static final ThreadLocal localTrace = new ThreadLocal<>(); @@ -49,6 +49,7 @@ public class Traces { // } // return traceid; // } + public static void currTraceid(String traceid) { if (enable) { localTrace.set(traceid);