### 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 PojoInvocationHandler(Map<Object, Object> map) {
            this.map = map;
        }
        @Override
        @SuppressWarnings("unchecked")
        public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
            if (method.getDeclaringClass() == Object.class) {
                return method.invoke(map, args);
            }
            String methodName = method.getName();
            Object value = null;
            if (methodName.length() > 3 && methodName.startsWith("get")) {
                value = map.get(methodName.substring(3, 4).toLowerCase() + methodName.substring(4));
            } else if (methodName.length() > 2 && methodName.startsWith("is")) {
                value = map.get(methodName.substring(2, 3).toLowerCase() + methodName.substring(3));
            } else {
                value = map.get(methodName.substring(0, 1).toLowerCase() + methodName.substring(1));
            }
            if (value instanceof Map<?, ?> && !Map.class.isAssignableFrom(method.getReturnType())) {
                value = realize0((Map<String, Object>) value, method.getReturnType(), null, new IdentityHashMap<Object, Object>());
            }
            return value;
        }
    }
    @SuppressWarnings("unchecked")
    private static Collection<Object> createCollection(Class<?> type, int len) {
        if (type.isAssignableFrom(ArrayList.class)) {
            return new ArrayList<Object>(len);
        }
        if (type.isAssignableFrom(HashSet.class)) {