0
我们重新使用了Grails,当然在它的O/R中使用了Hibernate。在一个实例中,我们有多个请求试图删除同一个对象。第一个线程将被删除,而第二个尝试删除该对象的线程将抛出StaleStateException。这是预期的。据商务部:删除原因StaleStateException
http://docs.jboss.org/hibernate/envers/3.6/javadocs/org/hibernate/StaleStateException.html
此异常:现在Also occurs if we try delete or update a row that does not exist.
,在我们的情况下也不例外。我们不在乎它已被删除。我们不希望在删除之前进行检查,我们只是想进行异常处理,因为它不是一个例外。
如果尝试删除并且对象不在那里,我们真正想要做的就是不会有此异常抛出。
有没有办法用Grails/Gorm做到这一点?
我拥有的最佳理想是使用HSQL的SQL进行删除,而不是使用hibernate/grails API。
还有更好的吗?
我曾想过这一点,但真的喜欢,如果异常被抛出从来没有。 –
那么完全删除异常,你可以远离休眠源代码并重新编译它。堆栈跟踪完全告诉你在什么文件和行中hibernate生成异常。 –