modelcontextprotocol / modelcontextprotocol/java-sdk
NullPointerException in McpClientSession
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Java
- Star
- 3.7k
- Fork
- 1.1k
- Merge trung bình
- 1 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 9
Mô tả
Please do a quick search on GitHub issues first, there might be already a duplicate issue for the one you are about to create.
If the bug is trivial, just go ahead and create the issue. Otherwise, please take a few moments and fill in the following sections:
Bug description
In https://github.com/enola-dev/enola/issues/1862, I've run into:
java.lang.NullPointerException: data
at java.base/java.util.Objects.requireNonNull(Objects.java:259)
at reactor.core.publisher.FluxHandle$HandleSubscriber.next(FluxHandle.java:251)
at io.modelcontextprotocol.spec.McpClientSession.lambda$sendRequest$12(McpClientSession.java:280)
at reactor.core.publisher.FluxHandle$HandleSubscriber.onNext(FluxHandle.java:113)
at reactor.core.publisher.SerializedSubscriber.onNext(SerializedSubscriber.java:99)
at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.onNext(FluxTimeout.java:181)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.success(MonoCreate.java:176)
I guess that this means that this is null?
Environment
0.14.1
Steps to reproduce
Unfortunately I'm unable to reproduce it locally even myself, but I am consistently seeing this on a failing CI build.
Expected behavior
Clear error message instead of NPE.
Minimal Complete Reproducible example
N/A
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu từ dòng 280 của mcp-core/src/main/java/io/modelcontextprotocol/spec/McpClientSession.java và xem xét luồng sendRequest liên quan đến FluxHandle NPE đã được báo cáo. Sử dụng lỗi được mô tả trong enola-dev/enola#1862 và môi trường 0.14.1 làm ngữ cảnh; được xem là hoàn thành khi lỗi không còn tạo ra một NPE không cung cấp thông tin, mà thay vào đó báo cáo một lỗi rõ ràng.
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
- 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
- 35/100