apache / apache/servicecomb-java-chassis
servicecomb由 1.X升级至 2.X 后InvokerUtils.syncInvoke()无法适配场景咨询
- Ngôn ngữ chính
- Java
- Star
- 1.9k
- Fork
- 814
- Merge trung bình
- 8 ngày 23 giờ
- Pull request đã merge (30 ngày)
- 1
Mô tả
业务网关implements InvocationHandler,在反射中做rpc调用,但是升级servicecomb后 InvokerUtils.syncInvoke方法参数变了,这个有啥办法处理Object[] args 转成 swaggerArguments,尝试过将method中parameters的name做key,但是没发保证arg[]顺序和method入参一致
例如:
public class Invoker implements InvocationHandler {
@Override
public Object invoke(Object proxy, Method method, Object[] args) {
Object response = InvokerUtils.syncInvoke(microserviceName,
microserviceSchemaId, microserviceOperationId,args);
}
}
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu bằng cách so sánh các signature của ServiceComb 1.x và 2.x InvokerUtils.syncInvoke, đồng thời lần theo ví dụ InvocationHandler được cung cấp. Xác định cách Object[] args cần được ánh xạ tới 2.x swaggerArguments trong khi vẫn giữ nguyên thứ tự tham số của phương thức. Hoàn thành khi đường dẫn invocation được hỗ trợ đã được ghi lại hoặc sửa và việc ánh xạ đối số đã được xác minh.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- api, backend
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 30/100