Author: adrianc
Date: Wed Mar 10 17:11:18 2010
New Revision: 921455
URL:
http://svn.apache.org/viewvc?rev=921455&view=revLog:
Revert rev 902341 - which seemed to cause problems with the Derby database.
Modified:
ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java
Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java?rev=921455&r1=921454&r2=921455&view=diff==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/MiscConverters.java Wed Mar 10 17:11:18 2010
@@ -114,13 +114,15 @@ public class MiscConverters implements C
}
public String convert(Clob obj) throws ConversionException {
- char[] charBuffer = null;
+ StringBuilder strBuf = new StringBuilder();
+ char[] inCharBuffer = new char[CHAR_BUFFER_SIZE];
+ int charsRead = 0;
Reader clobReader = null;
try {
- int clobLength = (int) obj.length();
- charBuffer = new char[clobLength];
- clobReader = obj.getCharacterStream();
- clobReader.read(charBuffer, 0, clobLength);
+ clobReader = obj.getCharacterStream();
+ while ((charsRead = clobReader.read(inCharBuffer, 0, CHAR_BUFFER_SIZE)) > 0) {
+ strBuf.append(inCharBuffer, 0, charsRead);
+ }
} catch (Exception e) {
throw new ConversionException(e);
}
@@ -131,7 +133,7 @@ public class MiscConverters implements C
} catch (IOException e) {}
}
}
- return new String(charBuffer);
+ return strBuf.toString();
}
}