This is an automated email from the ASF dual-hosted git repository. songkun pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/master by this push: new 89e1b94 Fix SelectTelnetHandler.telnet IndexOutOfBoundsException 89e1b94 is described below commit 89e1b94f1017e2094b6022bbbe5fd35e84b7b19d Author: AndyXu <952685...@qq.com> AuthorDate: Sat Feb 8 20:39:16 2020 +0800 Fix SelectTelnetHandler.telnet IndexOutOfBoundsException --- .../src/main/java/org/apache/dubbo/qos/legacy/SelectTelnetHandler.java | 2 +- .../test/java/org/apache/dubbo/qos/legacy/InvokerTelnetHandlerTest.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/SelectTelnetHandler.java b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/SelectTelnetHandler.java index 700b6ae..2db7f54 100644 --- a/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/SelectTelnetHandler.java +++ b/dubbo-plugin/dubbo-qos/src/main/java/org/apache/dubbo/qos/legacy/SelectTelnetHandler.java @@ -51,7 +51,7 @@ public class SelectTelnetHandler implements TelnetHandler { if (!StringUtils.isInteger(message) || Integer.parseInt(message) < 1 || Integer.parseInt(message) > methodList.size()) { return "Illegal index ,please input select 1~" + methodList.size(); } - Method method = methodList.get(Integer.parseInt(message)); + Method method = methodList.get(Integer.parseInt(message) - 1); channel.setAttribute(SELECT_METHOD_KEY, method); channel.setAttribute(SELECT_KEY, Boolean.TRUE); String invokeMessage = (String) channel.getAttribute(InvokeTelnetHandler.INVOKE_MESSAGE_KEY); diff --git a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/InvokerTelnetHandlerTest.java b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/InvokerTelnetHandlerTest.java index fa7d0c3..fd0f2b2 100644 --- a/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/InvokerTelnetHandlerTest.java +++ b/dubbo-plugin/dubbo-qos/src/test/java/org/apache/dubbo/qos/legacy/InvokerTelnetHandlerTest.java @@ -150,6 +150,8 @@ public class InvokerTelnetHandlerTest { result = select.telnet(mockChannel, "1"); //result dependent on method order. assertTrue(result.contains("result: 8") || result.contains("result: \"Dubbo\"")); + result = select.telnet(mockChannel, "2"); + assertTrue(result.contains("result: 8") || result.contains("result: \"Dubbo\"")); } @Test