diff --git "a/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" "b/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" index a540066..2dde25f 100644 --- "a/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" +++ "b/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" @@ -1024,6 +1024,7 @@ - 3、修复任务监控线程被耗时任务阻塞的问题; - 4、修复任务监控线程无法监控任务触发和执行状态均未0的问题; - 5、调度中心项目日志配置改为xml文件格式; +- 6、执行器动态代理对象,拦截非业务方法的执行; ### TODO LIST - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限; diff --git "a/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" "b/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" index a540066..2dde25f 100644 --- "a/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" +++ "b/doc/XXL-JOB\345\256\230\346\226\271\346\226\207\346\241\243.md" @@ -1024,6 +1024,7 @@ - 3、修复任务监控线程被耗时任务阻塞的问题; - 4、修复任务监控线程无法监控任务触发和执行状态均未0的问题; - 5、调度中心项目日志配置改为xml文件格式; +- 6、执行器动态代理对象,拦截非业务方法的执行; ### TODO LIST - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限; diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/rpc/netcom/NetComClientProxy.java b/xxl-job-core/src/main/java/com/xxl/job/core/rpc/netcom/NetComClientProxy.java index b71a353..b0343fc 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/rpc/netcom/NetComClientProxy.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/rpc/netcom/NetComClientProxy.java @@ -36,6 +36,12 @@ new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { + + // filter method like "Object.toString()" + if (Object.class.getName().equals(method.getDeclaringClass().getName())) { + logger.error(">>>>>>>>>>> xxl-rpc proxy class-method not support [{}.{}]", method.getDeclaringClass().getName(), method.getName()); + throw new RuntimeException("xxl-rpc proxy class-method not support"); + } // request RpcRequest request = new RpcRequest(); @@ -46,7 +52,7 @@ request.setMethodName(method.getName()); request.setParameterTypes(method.getParameterTypes()); request.setParameters(args); - + // send RpcResponse response = client.send(request);