This is an automated email from the ASF dual-hosted git repository. min pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/dubbo-proxy.git
The following commit(s) were added to refs/heads/master by this push: new 660a69b maybe we hava a method without args so it make a npe like below ``` Exception in thread "Dubbo-proxy-request-worker-pool-thread-3" java.lang.NullPointerException at org.apache.dubbo.proxy.worker.RequestWorker.run(RequestWorker.java:65) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748) ``` new 11dc687 Merge pull request #14 from qixiaobo/fix-no-args-method 660a69b is described below commit 660a69b607e3f424c45d2fe7c18962c5617a2702 Author: qixiaobo <qixiaobo...@gmail.com> AuthorDate: Fri Jul 26 19:58:24 2019 +0800 maybe we hava a method without args so it make a npe like below ``` Exception in thread "Dubbo-proxy-request-worker-pool-thread-3" java.lang.NullPointerException at org.apache.dubbo.proxy.worker.RequestWorker.run(RequestWorker.java:65) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748) ``` --- src/main/java/org/apache/dubbo/proxy/worker/RequestWorker.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/apache/dubbo/proxy/worker/RequestWorker.java b/src/main/java/org/apache/dubbo/proxy/worker/RequestWorker.java index 60262a7..cc89b83 100644 --- a/src/main/java/org/apache/dubbo/proxy/worker/RequestWorker.java +++ b/src/main/java/org/apache/dubbo/proxy/worker/RequestWorker.java @@ -1,6 +1,7 @@ package org.apache.dubbo.proxy.worker; import com.alibaba.fastjson.JSON; + import org.apache.dubbo.proxy.dao.ServiceDefinition; import org.apache.dubbo.proxy.dao.ServiceMapping; import org.apache.dubbo.proxy.metadata.MetadataCollector; @@ -33,7 +34,7 @@ import static io.netty.handler.codec.http.HttpResponseStatus.OK; import static io.netty.handler.codec.http.HttpVersion.HTTP_1_1; -public class RequestWorker implements Runnable{ +public class RequestWorker implements Runnable { private ServiceDefinition serviceDefinition; private ChannelHandlerContext ctx; @@ -60,7 +61,7 @@ public class RequestWorker implements Runnable{ String interfaze = Tool.getInterface(serviceID); String group = Tool.getGroup(serviceID); String version = Tool.getVersion(serviceID); - if (serviceDefinition.getParamTypes() == null) { + if (serviceDefinition.getParamTypes() == null && serviceDefinition.getParamValues() != null) { String[] types = getTypesFromMetadata(serviceDefinition.getApplication(), interfaze, group, version, serviceDefinition.getMethodName(), serviceDefinition.getParamValues().length); serviceDefinition.setParamTypes(types); @@ -103,7 +104,7 @@ public class RequestWorker implements Runnable{ Set<Cookie> cookies = ServerCookieDecoder.STRICT.decode(cookieString); if (!cookies.isEmpty()) { // Reset the cookies if necessary. - for (Cookie cookie: cookies) { + for (Cookie cookie : cookies) { response.headers().add(HttpHeaderNames.SET_COOKIE, ServerCookieEncoder.STRICT.encode(cookie)); } } @@ -119,7 +120,7 @@ public class RequestWorker implements Runnable{ MetadataIdentifier identifier = new MetadataIdentifier(interfaze, version, group, Constants.PROVIDER_SIDE, application); String metadata = metadataCollector.getProviderMetaData(identifier); FullServiceDefinition serviceDefinition = JSON.parseObject(metadata, FullServiceDefinition.class); - List<MethodDefinition> methods = serviceDefinition.getMethods(); + List<MethodDefinition> methods = serviceDefinition.getMethods(); if (methods != null) { for (MethodDefinition m : methods) { if (Tool.sameMethod(m, methodName, paramLen)) {