Hi Kathy, On Jul 14, 2006, at 6:46 PM, Kathey Marsden wrote:
Lance J. Andersen wrote:I will assume then that the Derby behavior is correct and won't file a bug. Thank you for the clarification but I don't think your comment was either necessary or appropriate.Hi Kathy,I would probably expect a SQLException to be thrown in this case or I guess you could return nothing.In the DDLUtils code, they just had the generic code: value = clob.getSubString(1, (int)clob.length()); to handle all non-null Clobs. The fix was to add in an extra branch to handle zero length Clobs which they were more than happy to do although it made their code look a little messier.
You can always work around odd code on the other side of an incompletely defined interface. But you probably have code on the Derby side that also checks for the clob.length() == 0 and take some extraordinary action.
So much easier for neither side to check for zero length and let the natural boundary condition happen.
Craig
This was the change to work around the SQLException. + else if (clob.length() == 0) + { + value = ""; + } else {value = clob.getSubString(1, (int) clob.length());Kathey
Craig Russell Architect, Sun Java Enterprise System http://java.sun.com/products/jdo 408 276-5638 mailto:[EMAIL PROTECTED] P.S. A good JDO? O, Gasp!
smime.p7s
Description: S/MIME cryptographic signature
