`NoSuchElementException` from `ServiceLoader` in Async Context
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 28/100
- issue の種類
- バグ
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- java
- 領域
- api, backend, networking
調査の方向性
まず、DerivativesTradingUsdsFuturesWebSocketStreams が CompletableFuture.supplyAsync() 内で作成される箇所を追跡し、次に報告されている Play/Pekko コンテキストで ServiceLoader と org.eclipse.jetty.websocket.api.ExtensionConfig.getParser を調査します。ForkJoinPool のワーカー上で失敗を再現し、コンテキストクラスローダーがどのように異なるかを確認してください。この報告では、想定される修正も完了テストも定義されていません。
索引モデルが issue の本文から書いたものです。
説明
This report details a critical runtime exception encountered for derivatives trading (USDS Futures) within a Play Framework 3 / Pekko environment.
When initializing the WebSocket client within a CompletableFuture (e.g., on Play's default ForkJoinPool), the ServiceLoader mechanism fails to find Jetty WebSocket extension implementations.
- Error:
java.util.NoSuchElementExceptionoriginating fromjava.util.ServiceLoaderand traced up throughorg.eclipse.jetty.websocket.api.ExtensionConfig.getParser. - Cause: The
ServiceLoaderrelies on theThread.currentThread().getContextClassLoader(). When the initialization code runs on a worker thread from a thread pool (likeForkJoinPool), this context classloader may not have visibility of the full application dependency classpath where the Jetty service implementations reside. - Trigger: Instantiating
new DerivativesTradingUsdsFuturesWebSocketStreams(wsConnectionPool)inside aCompletableFuture.supplyAsync()block.
- 主要言語
- Java
- スター
- 579
- フォーク
- 257
- 平均マージ
- 25分
- マージ済み PR(30日)
- 2
環境構築
このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
binance/binance-connector-java のほかの issue
-
Jetty versionオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 48/100
binance/binance-connector-java#239 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
binance/binance-connector-java の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
redhat-developer/intellij-quarkus#1626 ·
-
Type/Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
wso2/product-integrator-mi#5061 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
quarkiverse/quarkus-roq#1277 ·
メンテナーはふだん 1 日以内に返信
-
Typos in page footerオープン
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
apache/logging-site#48 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
apache/maven-surefire#3496 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信