That one? If you are talking about the problem mentioned in your
initial message
> public void testGetBytesJI1() throws Exception {
> byte[] buf = { 1, 2, 3, 4, 5, 6, 7, 8 };
> SerialBlob serialBlob = new SerialBlob(buf);
> byte [] data = serialBlob.getBytes(2, 1);
> assertEquals(1, data.length);
> assertEquals(2, data[0]);
> }
> throws SerialException with message "Invalid arguments: position cannot be
> less that 1".
then +1 from me for following the spec since I don't understand RI's
behavior at all. Please note that even the exception message itself
contains typos :)
Regards,
2006/12/13, Andrew Zhang <[EMAIL PROTECTED]>:
Hey guys,
How about this one? It seems a bug of RI too.
Any comments? Thanks!
On 12/11/06, Andrew Zhang <[EMAIL PROTECTED]> wrote:
>
> Hi folks,
> SerialBlob spec points out that getBytes(long position, int length) should
> throw SerialException if the given starting position is out of bounds. But
> RI also throws SerialException when the position is in the bound of the
> array in some other cases. Consider following code:
>
> public void testGetBytesJI1() throws Exception {
> byte[] buf = { 1, 2, 3, 4, 5, 6, 7, 8 };
> SerialBlob serialBlob = new SerialBlob(buf);
> byte [] data = serialBlob.getBytes(2, 1);
> assertEquals(1, data.length);
> assertEquals(2, data[0]);
> }
>
> IMO, the starting position 2 and the length 1 are both valid. But RI
> throws SerialException with message "Invalid arguments: position cannot be
> less that 1". Is it a bug of RI? Or did I missing something? Any
> suggestions? Thanks in advance!
>
> --
> Best regards,
> Andrew Zhang
>
--
Best regards,
Andrew Zhang
--
Alexei Zakharov,
Intel ESSD