JDK 1.6x, Hibernate 3.2.7, Oracle 10g (ojdbc14.jar)
У меня есть класс (сущности), который содержит Clob. Через вызов RESTful мне передают строку, которая будет содержимым clob. У меня проблемы с заполнением строки в гвоздик для дальнейшего упорства. вот класс ....
public class MyClass implements java.io.Serializable {
private static final long serialVersionUID = 5507279748316866736L;
private long id;
private String name;
private String description;
private java.sql.Clob featuresJson;
...etc...
вот код десериализации ...
try {
String jsonStr = msoNode.path("features_json").getTextValue();
SerialClob clob = new SerialClob(jsonStr.toCharArray());
mso.setFeaturesJson(clob);
} catch (Exception e) {
log.error("MyClassDeserializer.deserialize(): Exception deserializing the features JSON." + e.getMessage());
}
после десериализации я нахожусь на операторе слияния Дао ...
MyClass savedOverlay = myClassDao.merge(overlay);
где "overlay" - десериализованный экземпляр "MyClass". в этот момент я могу заглянуть внутрь clob и посмотреть данные - однако возвращенный экземпляр имеет нулевое поле clob, и столбец clob в базе данных также равен нулю!
Что не так с моим кодом десериализации? Я пробовал несколько других вещей, но каждый раз получал сбои (по крайней мере, это соответствует!)