### Environment

* Dubbo version: 3.1
* Operating System version: mac m1
* Java version: 1.8

### Steps to reproduce this issue

1. Use the following code to make a generalization call of the bean mode

2. ```java
     public interface DemoService {
       String sayHello(String name);
   }
   ```

   

3. ```java
   ReferenceConfig<GenericService> referenceConfig = new ReferenceConfig<>();
       referenceConfig.setInterface(DemoService.class.getCanonicalName());
       applicationConfig.setRegistry(registryConfig);
       referenceConfig.setApplication(applicationConfig);
       referenceConfig.setGeneric(GENERIC_SERIALIZATION_BEAN);
       GenericService genericService = referenceConfig.get();
   JavaBeanDescriptor result = (JavaBeanDescriptor)genericService.$invoke("sayHello", new String[]{"java.lang.String"}, new Object[]{JavaBeanSerializeUtil.serialize(null)});
   ```

### Expected Behavior

call success

### Actual Behavior

If there is an exception, please attach the exception trace:

```
Caused by: java.lang.NullPointerException
	at org.apache.dubbo.rpc.filter.GenericImplFilter.invoke(GenericImplFilter.java:126)
	at org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CopyOfFilterChainNode.invoke(FilterChainBuilder.java:327)
	at org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CallbackRegistrationInvoker.invoke(FilterChainBuilder.java:194)
	at org.apache.dubbo.rpc.protocol.ReferenceCountInvokerWrapper.invoke(ReferenceCountInvokerWrapper.java:78)
	at org.apache.dubbo.rpc.cluster.support.AbstractClusterInvoker.invokeWithContext(AbstractClusterInvoker.java:379)
	at org.apache.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:81)
```
field.set(targetException, exception.getExceptionMessage());
                        } catch (Throwable e) {
                            logger.warn(COMMON_REFLECTIVE_OPERATION_FAILED, "", "", e.getMessage(), e);
                        }
                        appResponse.setException(targetException);
                    } else if (lastException != null) {
                        throw lastException;
                    }
                } catch (Throwable e) {
                    throw new RpcException("Can not deserialize exception " + exception.getExceptionClass() + ", message: " + exception.getExceptionMessage(), e);
                }
            }
        }
    }
    @Override
    public void onError(Throwable t, Invoker<?> invoker, Invocation invocation) {
    }
    private boolean isCallingGenericImpl(String generic, Invocation invocation) {
        return ProtocolUtils.isGeneric(generic)
            && (!$INVOKE.equals(invocation.getMethodName()) && !$INVOKE_ASYNC.equals(invocation.getMethodName()))
            && invocation instanceof RpcInvocation;
    }
    private boolean isMakingGenericCall(String generic, Invocation invocation) {
        return (invocation.getMethodName().equals($INVOKE) || invocation.getMethodName().equals($INVOKE_ASYNC))
            && invocation.getArguments() != null
            && invocation.getArguments().length == 3
            && ProtocolUtils.isGeneric(generic);
    }
}