当 `onMessage` 要转换的消息类型为 `byte[]` 时,报错:ClassCastException: java.lang.String cannot be cast to [B
まだ誰も着手していません。
評価
調査の方向性
rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java の543-551行目から開始し、その後 Spring Messaging の ByteArrayMessageConverter の動作を調査します。byte[] を期待する onMessage ハンドラーへの配信を再現し、byte[] ペイロードの処理を維持したまま、変換によって ClassCastException が発生しなくなっていることを確認します。
索引モデルが issue の本文から書いたものです。
説明
我注意到这里当要转换的类型为 byte[] 时,会调用spring-messaging 的 ByteArrayMessageConverter 的 convertFromInternal,而这个方法会原样返回 payload。而截图的 L551 行,将 payload 设置成了 str,导致 String 到 byte[] 的类型转换异常 ClassCastException: java.lang.String cannot be cast to [B 。
org.springframework.messaging.converter.ByteArrayMessageConverter#convertFromInternal
return message.getPayload();
- 主要言語
- Java
- スター
- 2.3k
- フォーク
- 941
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/rocketmq-spring のほかの issue
-
[Bug] RocketMQClientTemplate.receiveAsync closes the shared SimpleConsumer, breaking all subsequent operations対応中かも @wang-jiahua が 59 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
apache/rocketmq-spring#780 · コメント 3 件 ·
-
编译报错オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
apache/rocketmq-spring#692 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
apache/rocketmq-spring#678 · コメント 2 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
apache/rocketmq-spring#670 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
apache/rocketmq-spring#609 · コメント 3 件 ·
apache/rocketmq-spring の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
intellij-elixir/intellij-elixir#4585 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
MetricsHub/metricshub-community#1474 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
adorsys/keycloak-config-cli#1742 ·
メンテナーはふだん 1 日以内に返信
-
Booking links: POST /api/booking-links with a null element in "availabilityRules" throws NullPointerException and answers 500 instead of 400対応中かも @chibenwa が今日担当しました。 オープンai-driven-fuzzing bug claude Minor
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
linagora/twake-calendar-side-service#1322 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
PathnameExpander incorrectly interprets regex metacharacters in wildcard patterns対応中かも @jiteshkhatri11 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
javapathfinder/jpf-core#662 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信