[
https://issues.apache.org/jira/browse/ZOOKEEPER-3215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16724625#comment-16724625
]
maoling commented on ZOOKEEPER-3215:
------------------------------------
look at the
patch:https://github.com/mongodb/mongo-java-driver/commit/21c91bd364d38489e0bbe2e390efdb3746ee3fff
just cast ByteBuffer to Buffer. Java 9 hasn't the good downward compatibility.
Thanks for telling us how to reproduce this issue.
[~softwareengg]
Could you give us a patch?
> Handle Java 9/11 additions of covariant return types to java.nio.ByteBuffer
> methods
> -----------------------------------------------------------------------------------
>
> Key: ZOOKEEPER-3215
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3215
> Project: ZooKeeper
> Issue Type: Bug
> Affects Versions: 3.4.13
> Reporter: V
> Priority: Minor
>
> Java 9 introduces covariant return types which allows one to have different
> return types if return type in the overridden method is a sub type. Since
> Java 9, few functions return ByteBuffer, whereas the parent method return
> Buffer, resulting in causing issues for Java 8 and below since for them the
> method does not exist.
> Steps To Reproduce:
> 1. Setup ZooKeeper Server with JDK11.
> 2. Setup ZooKeeper Client with JDK8.
> 3. Try connecting the client and server.
> Results:
> Cast ByteBuffer instances to Buffer before calling the method.
>
> Notes:
> There was a similar bug in the MongoDB community -
> [https://jira.mongodb.org/browse/JAVA-2559]
>
> This is not a contribution.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)