2012-03-21 133 views
1

能否请你帮我,当我尝试使用Hibernate /甲骨文10.2我有以下错误执行更新HQL:休眠/ ORACLE /春:值java.sql.SQLException:违反协议

我使用Java 1.6 。

在我的行家:

<dependency> 
<groupId>com.oracle</groupId> 
<artifactId>ojdbc14</artifactId> 
<version>10.2.0.4.0</version> 
</dependency> 
<dependency> 
<groupId>org.hibernate.javax.persistence</groupId> 
<artifactId>hibernate-jpa-2.0-api</artifactId> 
<version>1.0.1.Final</version> 
</dependency> 

例外:

Caused by: org.springframework.transaction.TransactionSystemException: Could not roll back JPA transaction; 
Caused by: org.hibernate.TransactionException: rollback failed 
Caused by: org.hibernate.TransactionException: unable to rollback against JDBC connection 
Caused by: java.sql.SQLException: Protocol violation 

感谢。

+0

向我们展示了造成该问题的代码... – ManuPK 2012-03-21 14:58:59

+0

您在那之前是否看到过任何OutOfMemoryError异常? – Olaf 2012-03-24 19:32:29

回答

0

我找到了解决方案。 我已经改变了我的代码,只删除级联属性:

@OneToMany(fetch = FetchType.LAZY, mappedBy = "scheduleRequest", cascade = CascadeType.ALL) 
public Set<AdhocDetail> getAdhocDetails() { 
return this.adhocDetails; 
} 

到:

@OneToMany(fetch = FetchType.LAZY, mappedBy = "scheduleRequest") 
public Set<AdhocDetail> getAdhocDetails() { 
return this.adhocDetails; 
} 

感谢。

+0

嗨ManuPK和Olaf。我试图为您发布回复,但无法提交,当我点击“添加评论”按钮。谢谢你的回复。 – Jemru 2012-03-26 06:09:04