Hector:java.nio.BufferUnderflowException

时间:2013-07-11 17:07:32

标签: java cassandra hector bytebuffer

我正在获取字符串的ByteBuffer,例如100如下

ByteBuffer data = IntegerSerializer.get().toByteBuffer(Integer.parseInt(data));

并将此数据插入列中,说'MYCOLUMN'

在阅读我正在使用的“MYCOLUMN”列时:

public Objct myfunction(ByteBuffer data){
        return IntegerSerializer.get().fromByteBuffer(data);
}

但是如果我提到“MYCOLUMN”栏目

,我会听到以下错误
java.nio.BufferUnderflowException
    at java.nio.Buffer.nextGetIndex(Buffer.java:480)
    at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:336)
    at me.prettyprint.cassandra.serializers.IntegerSerializer.fromByteBuffer(IntegerSerializer.java:35)

1 个答案:

答案 0 :(得分:1)

this issue非常相似:

  

您想要指定Int32Type而不是IntegerType。后者是用词不当,实际上代表了一个BigInteger。