### Environment

* Dubbo version: 2.7.4.1
* Operating System version: macOS Catalina Version 10.15.3
* Java version: 1.8.0_231

### Steps to reproduce this issue

1. 通过telnet调用接口如下
方法(Method)
`public String convert7(UserInfoCondition userInfoCondition) {  }`
参数(Parameter)
`public class UserInfoCondition {
    private List<Map<Integer, UserInfo>> userList;
}`
`public class UserInfo {
    private String accountMobile;
    private String userPassword;
}`

invoke UsesrInfoFacade.convert7({"userList":[{"1":{"accountMobile":"15052234567"}}]})
or
invoke UsesrInfoFacade.convert7({"userList":[{1:{"accountMobile":"15052234567"}}]})

提示如下错误(has a problem)
![image](https://user-images.githubusercontent.com/17045745/77892951-ebd50d00-72a5-11ea-95b0-dd59a68a83cc.png)

到底如何书写这个入参呢?(How to write the parameters)


public void testMessageNull() throws RemotingException {
        mockChannel = mock(Channel.class);
        given(mockChannel.getAttribute("telnet.service")).willReturn(null);
        String result = invoke.telnet(mockChannel, null);
        assertEquals("Please input method name, eg: \r\ninvoke xxxMethod(1234, \"abcd\", {\"prop\" : \"value\"})\r\ninvoke XxxService.xxxMethod(1234, \"abcd\", {\"prop\" : \"value\"})\r\ninvoke com.xxx.XxxService.xxxMethod(1234, \"abcd\", {\"prop\" : \"value\"})",
                result);
    }
    @Test
    public void testInvalidMessage() throws RemotingException {
        mockChannel = mock(Channel.class);
        given(mockChannel.getAttribute("telnet.service")).willReturn(null);
        String result = invoke.telnet(mockChannel, "(");
        assertEquals("Invalid parameters, format: service.method(args)", result);
    }
    private void registerProvider(String key, Object impl, Class<?> interfaceClass) {
        ServiceDescriptor serviceDescriptor = repository.registerService(interfaceClass);
        repository.registerProvider(
                key,
                impl,
                serviceDescriptor,
                null,
                null
        );
    }
    private Channel getChannelInstance() {
        return new Channel() {
            private final Map<String, Object> attributes = new ConcurrentHashMap<String, Object>();
            @Override
            public InetSocketAddress getRemoteAddress() {
                return null;