unmarshalResponse masks errors that aren't in JSON format
まだ誰も着手していません。
評価
調査の方向性
KillBillHttpClient.java の unmarshalResponse と、参照されている行の周辺にある catch ブロックから始めます。pluginPOST が JSON ではないレスポンスをどのように処理するかを追跡し、元のレスポンスボディがパースエラーに置き換えられず、そのまま確認できることを検証します。この失敗経路がカバーされ、返されるエラーにサーバーのレスポンスが保持されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Particularly this error.
I am getting an error when using pluginPOST:
org.killbill.billing.client.KillBillClientException: com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Invalid': was expecting 'null', 'true', 'false' or NaN
at [Source: org.jboss.netty.buffer.ChannelBufferInputStream@15590dd4; line: 1, column: 9]
at org.killbill.billing.client.KillBillHttpClient.unmarshalResponse(KillBillHttpClient.java:718)
at org.killbill.billing.client.KillBillHttpClient.deserializeResponse(KillBillHttpClient.java:648)
at org.killbill.billing.client.KillBillHttpClient.throwExceptionOnResponseError(KillBillHttpClient.java:632)
at org.killbill.billing.client.KillBillHttpClient.doPrepareRequest(KillBillHttpClient.java:503)
at org.killbill.billing.client.KillBillHttpClient.doPost(KillBillHttpClient.java:247)
at org.killbill.billing.client.KillBillHttpClient.doPost(KillBillHttpClient.java:242)
at org.killbill.billing.client.KillBillHttpClient.doPost(KillBillHttpClient.java:238)
at org.killbill.billing.client.KillBillClient.pluginPOST(KillBillClient.java:3979)
This is masking the actual error that is being returned. There should be a catch handler there somewhere to detect JsonParseExceptions and return response.getResponseBody() instead. Possibly, just add JsonParseException to the catch block on line 731 of KillBillHttpClient? I realize I could switch the DEBUG flag on, but if this is an intermittent error in production, that flag doesn't help too much.
- 主要言語
- Java
- スター
- 35
- フォーク
- 67
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
killbill/killbill-client-java のほかの issue
-
enhancement
killbill/killbill-client-java#144 · コメント 1 件 · 担当者 1 名 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
killbill/killbill-client-java#140 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 38/100
killbill/killbill-client-java#136 · コメント 7 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
killbill/killbill-client-java#135 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 42/100
killbill/killbill-client-java#131 · コメント 1 件 ·
killbill/killbill-client-java の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
checkstyle/test-configs#263 ·
-
bug
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
apache/cloudstack#14222 ·
-
[BUG]茶杯方块在取茶时会引发崩溃 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
1.0.0-alpha2 Type/Improvement
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
wso2/dpdp-accelerator#272 ·