@SuppressWarnings("unchecked")
    @Override
    public void onMessage(final R message) {
        Message.Builder builder;
        Class<?> t = JsonServerServiceInterceptor.getRequestClazzMap().get(call.getMethodDescriptor().getFullMethodName());
        try {
            builder = (Message.Builder) ReflectUtils.invokeStaticMethod(t, "newBuilder");

            String reqData = JsonMessage.getDataFromDynamicMessage((DynamicMessage) message);
            JsonFormat.parser().ignoringUnknownFields().merge(reqData, builder);
            if (Objects.isNull(builder)) {
                throw new ShenyuException("build json response message is error, newBuilder method is null");
            }

            delegate.onMessage((R) builder.build());
        } catch (Exception e) {
            throw Status.INTERNAL.withDescription(e.getMessage()).asRuntimeException();
        }
    }
@Test
    public void testOnMessage() {
        testJsonServerCallListener.onMessage(new TestRequest("test-on-message"));
    }