Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2014
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. class ClassOne {
  2. @Autowired
  3. ClassTwo classTwo;
  4.  
  5. public void mainMethod() {
  6. Query query = em.createNativeQuery(...);
  7. classTwo.runTransaction(new Runnable() {
  8. @Override public void run() {
  9. query.executeUpdate();
  10. }
  11. });
  12. }
  13. }
  14.  
  15. @Component
  16. class ClassTwo {
  17. @Transactional
  18. public void runTransaction(Runnable runnable) {
  19. runnable.run();
  20. }
  21. }
  22.  
  23. Executing an update/delete query javax.persistence.TransactionRequiredException: Executing an update/delete query
  24. at org.hibernate.jpa.spi.AbstractQueryImpl.executeUpdate(AbstractQueryImpl.java:71)
  25. at sun.reflect.GeneratedMethodAccessor103.invoke(Unknown Source)
  26. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  27. at java.lang.reflect.Method.invoke(Method.java:601)
  28. at org.springframework.orm.jpa.SharedEntityManagerCreator$DeferredQueryInvocationHandler.invoke(SharedEntityManagerCreator.java:310)
  29. at $Proxy55.executeUpdate(Unknown Source)
  30. at ...ClassTwo.runTransaction(...)
  31. at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
  32. at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
  33. at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
  34. at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
  35. at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
  36. at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)
  37. at ...ClassOne.mainMethod(...)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement