执行器动态代理对象,拦截非业务方法的执行

master
xuxueli 7 years ago
parent ee1e32ddf3
commit 87442a5c59
  1. 1
      doc/XXL-JOB官方文档.md
  2. 8
      xxl-job-core/src/main/java/com/xxl/job/core/rpc/netcom/NetComClientProxy.java

@ -1024,6 +1024,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
- 3、修复任务监控线程被耗时任务阻塞的问题;
- 4、修复任务监控线程无法监控任务触发和执行状态均未0的问题;
- 5、调度中心项目日志配置改为xml文件格式;
- 6、执行器动态代理对象,拦截非业务方法的执行;
### TODO LIST
- 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;

@ -36,6 +36,12 @@ public class NetComClientProxy implements FactoryBean<Object> {
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 @@ public class NetComClientProxy implements FactoryBean<Object> {
request.setMethodName(method.getName());
request.setParameterTypes(method.getParameterTypes());
request.setParameters(args);
// send
RpcResponse response = client.send(request);

Loading…
Cancel
Save