| --- |
| id: client-java-2.7.1 |
| title: Client Java 2.7.1 |
| sidebar_label: Client Java 2.7.1 |
| --- |
| |
| - [Java] Add original info when publishing message to dead letter topic [#9655](https://github.com/apache/pulsar/pull/9655) |
| - [Java] Fix hasMessageAvailable() with empty topic [#9798](https://github.com/apache/pulsar/pull/9798) |
| - [Java] Add BouncyCastleProvider as security provider to prevent NPE [#9601](https://github.com/apache/pulsar/pull/9601) |
| - [Java] Async the DLQ process [#9552](https://github.com/apache/pulsar/pull/9552) |
| - [Java] Fix the partition number not equals expected error [#9446](https://github.com/apache/pulsar/pull/9446) |
| - [Java] Cleanup consumer on multitopic subscribe failure [#9419](https://github.com/apache/pulsar/pull/9419) |
| - [Java] Compression must be applied during deferred schema preparation and enableBatching is enabled [#9396](https://github.com/apache/pulsar/pull/9396) |
| - [Java] Add default implementation of CryptoKeyReader [#9379](https://github.com/apache/pulsar/pull/9379) |
| - [Java] Able to handling messages with multiple listener threads in order for the Key_Shared subscription [#9329](https://github.com/apache/pulsar/pull/9329) |
| - [Java] Fix NPE when MultiTopicsConsumerImpl receives null value messages [#9113](https://github.com/apache/pulsar/pull/9113) |
| - [Java] Fix Unavailable Hash Range Condition [#9041](https://github.com/apache/pulsar/pull/9041) |
| - [Java] Add more information in send timeout exception [#8931](https://github.com/apache/pulsar/pull/8931) |
| - [Java] GenericJsonReader converts the null value to string "null" [#8883](https://github.com/apache/pulsar/pull/8883) |
| - [Java] Always remove message data size [#8566](https://github.com/apache/pulsar/pull/8566) |
| |