What is happening when I receive the Java runtime exception “Request to retrieve LOB column which had already been accessed. LOB columns may only be accessed once”?
When LOB data is streamed back from the DBMS, the data must be read directly by the application. Once the data has been read, a second attempt to retrieve the column value will result in the exception shown above. One option is to use locators, but that should happen automatically in situations where it won’t cause problems. Autocommit is the normal condition which would automatically disable locators. Less likely is using select loops or explicitly disabling locators in the property file. The easiest work around is to enable LOB caching. The side effect is that all non-locator LOB data will be held in memory.