我目前正在開發一個GWT/RequestFactory和Hibernate/JPA作爲持久性提供者的應用程序。如何擺脫GWT中的「ID爲XXX的持久實體具有空版本」?
所以我開始修改我的Entity類,創建了EntityProxies,在orm.xml中添加了相應的映射的Version列(對於註釋愛好者抱歉,我仍舊這樣做),得到hibernate生成數據庫模式正確,但是當我嘗試做的事情在裏面我有例外:
@ProxyFor(XXXXX)
public interface UserProxy extends EntityProxy {
public Long getId();
public void setId(Long id);
public Integer getVersion();
public void setVersion(Integer version);
// removed ...
}
"The persisted entity with id XXX has a null version"
我看看數據庫表,該版本的列有...... 用值爲
所以有人可以告訴我什麼是錯的?任何幫助,將不勝感激......
非常感謝,
我已經設置了斷點,並最終找到了我期待從domainVersion = service.getVersion(domainObject)的對象;不是我得到的那個...我有我的域對象的繼承層次結構,所以我得到它的工作。我也跟着你的建議,關於不公開setId()和setVersion()方法...謝謝你的技巧!你似乎很瞭解GWT的內部,你是如何發現它恰好在這一點上必須在SimpleRequestProcessor中設置斷點?這太神奇了...再次感謝很多... – kaffein 2011-06-10 14:46:49