### Environment

* Dubbo version: 3.0

### Steps to reproduce this issue
测试dubbo-samples项目的AnnotationServicesIT.testGreeting方法时，偶尔会出现服务端超时触发此异常。
手工触发方法：
修改AnnotationAction.java的greetingService服务引用对象的method超时注解，从3000改为1000（服务端代码里有2000毫秒sleep），然后运行就会遇到NPE：
```
java.lang.NullPointerException 
	at org.apache.dubbo.rpc.protocol.dubbo.DecodeableRpcResult.decode(DecodeableRpcResult.java:85)
```
DecodeableRpcResult 85行代码：```if (invocation.getServiceModel() != null) { ```
服务端超时，此处invocation为null。
if (serializationTypeObj != null) {
                            if ((byte) serializationTypeObj != serializationType) {
                                throw new IOException("Unexpected serialization id:" + serializationType + " received from network, please check if the peer send the right id.");
                            }
                        }
                    }
                }
                decode(channel, inputStream);
            } catch (Throwable e) {
                if (log.isWarnEnabled()) {
                    log.warn("Decode rpc result failed: " + e.getMessage(), e);
                }
                response.setStatus(Response.CLIENT_ERROR);
                response.setErrorMessage(StringUtils.toString(e));
            } finally {
                hasDecoded = true;
            }
        }
    }
    private void handleValue(ObjectInput in) throws IOException {
        try {
            Type[] returnTypes;
            if (invocation instanceof RpcInvocation) {
                returnTypes = ((RpcInvocation) invocation).getReturnTypes();
            } else {
                returnTypes = RpcUtils.getReturnTypes(invocation);
            }
            Object value = null;
            if (ArrayUtils.isEmpty(returnTypes)) {