Thanks!! It works fine! I was going crazy for a line, thank you very
much!

On 8 mar, 23:41, FrugoFrog <frugof...@gmail.com> wrote:
> shouldn't one merge the entity first ? so that it's managed/attached.
>
> em.remove(em.merge(this));
>
> regards
>
> 2011/3/7 SrArcos <srar...@gmail.com>:
>
> > Hello all, I don't know if my question must be here, but I need a help
> > with this problem and I don't know exactly where it can being solved.
>
> > I'm trying to remove an entity from the server: ObjectEntity.
>
> > this is the method in the entity:
>
> > [code]
> >        public void remove() {
> >                EntityManager em = null;
> >                EntityTransaction tx = null;
> >                try {
> >                        em = Manager.getEMF().createEntityManager();
> >                        tx = em.getTransaction();
> >                        tx.begin();
>
> >                        em.remove(this);
>
> >                        tx.commit();
>
> >                } catch (Exception e) {
> >                        e.printStackTrace();
> >                        if (tx != null) {
> >                                tx.rollback();
> >                        }
> >                } finally {
> >                        if (em != null) {
> >                                em.close();
> >                        }
> >                }
> >        }
> > [/code]
>
> > and this is the method to call the removal request:
>
> > [code]
> > public void doDelete(Record lgr) {
> >                final Long id = Long.valueOf(lgr.getAttribute("id"));
>
> >                ObjectEntityRequest cRequest =
> > RFService.getRF().getObjectEntityRequest();
> >                cRequest.findObjectEntity(id).fire(new 
> > Receiver<ObjectEntityProxy>()
> > {
> >                        @Override
> >                        public void onSuccess(ObjectEntityProxy response) {
> >                                Request<Void> del =
>
> > RFService.getRF().getObjectEntityRequest()
> >                                             .remove()
> >                                                .using(aborrar);
> >                                del.fire(new Receiver<Void>() {
> >                                        @Override
> >                                        public void onSuccess(Void response) 
> > {
> >                                                Window.alert("ObjectEntity 
> > borrado con &eacute;xito");
>
> >                                        }
> >                                        @Override
> >                                        public void onFailure(ServerFailure 
> > error) {
> >                                                Window.alert("Error al 
> > eliminar el ObjectEntity");
> >                                        }
> >                                });
> >                        }
> >                });
> >        }
> > [/code]
>
> > And the server error I has is this:
>
> > java.lang.IllegalArgumentException: Removing a detached instance
> > org.mycompany.server.entities.ObjectEntity#400
> >        at
> > org.hibernate.ejb.event.EJB3DeleteEventListener.performDetachedEntityDeletionCheck(EJB3DeleteEventListener.java:
> > 65)
> >        at
> > org.hibernate.event.def.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:
> > 107)
> >        at
> > org.hibernate.event.def.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:
> > 73)
> >        at org.hibernate.impl.SessionImpl.fireDelete(SessionImpl.java:956)
> >        at org.hibernate.impl.SessionImpl.delete(SessionImpl.java:934)
> >        at
> > org.hibernate.ejb.AbstractEntityManagerImpl.remove(AbstractEntityManagerImpl.java:
> > 702)
> >        at
> > org.mycompany.server.entities.ObjectEntity.remove(ObjectEntity.java:
> > 214)
> >        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >        at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> > 57)
> >        at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
> > 43)
> >        at java.lang.reflect.Method.invoke(Method.java:616)
> >        at
> > com.google.gwt.requestfactory.server.ReflectiveServiceLayer.invoke(ReflectiveServiceLayer.java:
> > 164)
> >        at
> > com.google.gwt.requestfactory.server.ServiceLayerDecorator.invoke(ServiceLayerDecorator.java:
> > 89)
> >        at
> > com.google.gwt.requestfactory.server.ServiceLayerDecorator.invoke(ServiceLayerDecorator.java:
> > 89)
> >        at
> > com.google.gwt.requestfactory.server.SimpleRequestProcessor.processInvocationMessages(SimpleRequestProcessor.java:
> > 440)
> >        at
> > com.google.gwt.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:
> > 218)
> >        at
> > com.google.gwt.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:
> > 125)
> >        at
> > com.google.gwt.requestfactory.server.RequestFactoryServlet.doPost(RequestFactoryServlet.java:
> > 118)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> >        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
> > 487)
> >        at org.mortbay.jetty.servlet.ServletHandler
> > $CachedChain.doFilter(ServletHandler.java:1097)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:359)
> >        at
> > org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:
> > 109)
> >        at
> > org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:
> > 83)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.SessionFixationProtectionFilter.doFilterHttp(SessionFixationProtectionFilter.java:
> > 67)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:
> > 101)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:
> > 105)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:
> > 116)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:
> > 91)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:
> > 173)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:
> > 271)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:
> > 89)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:
> > 235)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.concurrent.ConcurrentSessionFilter.doFilterHttp(ConcurrentSessionFilter.java:
> > 99)
> >        at
> > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:
> > 53)
> >        at org.springframework.security.util.FilterChainProxy
> > $VirtualFilterChain.doFilter(FilterChainProxy.java:371)
> >        at
> > org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:
> > 174)
> >        at
>
> ...
>
> leer más »

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to