Project

General

Profile

Actions

bug #7945

closed

TaxonNamePopupEditor: missing genus causes exception when updating name parts visibility

Added by Andreas Kohlbecker over 5 years ago. Updated about 5 years ago.

Status:
Rejected
Priority:
Highest
Category:
cdm-vaadin
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Severity:
normal
Found in Version:
Tags:

Description

Incomplete data (missing genus) can result in exceptions being thrown:

org.hibernate.HibernateException: A collection with cascade="all-delete-orphan" was no longer referenced by the owning entity instance: eu.etaxonomy.cdm.model.common.DefinedTermBase.representations
               at org.hibernate.engine.internal.Collections.processDereferencedCollection(Collections.java:99)
               at org.hibernate.engine.internal.Collections.processUnreachableCollection(Collections.java:50)
               at org.hibernate.event.internal.AbstractFlushingEventListener.flushCollections(AbstractFlushingEventListener.java:243)
               at org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:86)
               at org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:44)
               at org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1251)
               at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1319)
               at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)
               at org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:960)
               at eu.etaxonomy.cdm.persistence.dao.hibernate.name.TaxonNameDaoHibernateImpl.countTaxonNameParts(TaxonNameDaoHibernateImpl.java:997)
               at eu.etaxonomy.cdm.api.service.NameServiceImpl.findTaxonNameParts(NameServiceImpl.java:354)
               at eu.etaxonomy.cdm.api.service.NameServiceImpl.findTaxonNameParts(NameServiceImpl.java:375)
               at sun.reflect.GeneratedMethodAccessor1781.invoke(Unknown Source)
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.lang.reflect.Method.invoke(Method.java:498)
               at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
               at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
               at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
               at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
               at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
               at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
               at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
               at com.sun.proxy.$Proxy611.findTaxonNameParts(Unknown Source)
               at eu.etaxonomy.cdm.service.TaxonNameStringFilterablePagingProvider.size(TaxonNameStringFilterablePagingProvider.java:196)
               at org.vaadin.viritin.fields.LazyComboBox$7.size(LazyComboBox.java:261)
               at org.vaadin.viritin.LazyList.size(LazyList.java:229)
               at org.vaadin.viritin.LazyList$1.<init>(LazyList.java:302)
               at org.vaadin.viritin.LazyList.iterator(LazyList.java:299)
               at java.util.AbstractCollection.contains(AbstractCollection.java:99)
               at org.vaadin.viritin.LazyList.contains(LazyList.java:284)
               at eu.etaxonomy.vaadin.component.WeaklyRelatedEntityCombobox.setValue(WeaklyRelatedEntityCombobox.java:199)
               at eu.etaxonomy.cdm.vaadin.view.name.TaxonNameEditorPresenter.onFieldReplaceEvent(TaxonNameEditorPresenter.java:379)
               at sun.reflect.GeneratedMethodAccessor1906.invoke(Unknown Source)
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.lang.reflect.Method.invoke(Method.java:498)
               at org.vaadin.spring.events.internal.MethodListenerWrapper.publish(MethodListenerWrapper.java:78)
               at org.vaadin.spring.events.internal.ListenerCollection.publish(ListenerCollection.java:167)
               at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:116)
               at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:109)
               at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor.replaceComponent(AbstractPopupEditor.java:928)
               at eu.etaxonomy.cdm.vaadin.view.name.TaxonNamePopupEditor.updateFieldVisibility(TaxonNamePopupEditor.java:730)
               at eu.etaxonomy.cdm.vaadin.view.name.TaxonNamePopupEditor.updateAuthorshipFields(TaxonNamePopupEditor.java:628)
               at eu.etaxonomy.cdm.vaadin.view.name.TaxonNamePopupEditor.afterItemDataSourceSet(TaxonNamePopupEditor.java:556)
               at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor.loadInEditor(AbstractPopupEditor.java:812)
               at eu.etaxonomy.cdm.vaadin.view.registration.RegistrationWorkingsetPresenter.onTaxonNameEditorActionEdit(RegistrationWorkingsetPresenter.java:435)
               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
               at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.lang.reflect.Method.invoke(Method.java:498)
               at org.vaadin.spring.events.internal.MethodListenerWrapper.publish(MethodListenerWrapper.java:78)
               at org.vaadin.spring.events.internal.ListenerCollection.publish(ListenerCollection.java:167)
               at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:116)
               at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:109)
               at eu.etaxonomy.cdm.vaadin.view.registration.RegistrationWorksetViewBean.lambda$putRegistrationListComponent$e83e5a40$1(RegistrationWorksetViewBean.java:354)
               at sun.reflect.GeneratedMethodAccessor1663.invoke(Unknown Source)
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.lang.reflect.Method.invoke(Method.java:498)
               at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:510)
               at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:200)
               at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:163)
               at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1015)
               at com.vaadin.ui.Button.fireClick(Button.java:377)
               at com.vaadin.ui.Button$1.click(Button.java:54)
               at sun.reflect.GeneratedMethodAccessor1662.invoke(Unknown Source)
               at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
               at java.lang.reflect.Method.invoke(Method.java:498)
               at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:158)
               at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:119)
               at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:437)
               at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:402)
               at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:273)
               at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:90)
               at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
               at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1435)
               at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:380)
               at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
               at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
               at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
               at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
               at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
               at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)
               at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)
               at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
               at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
               at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
               at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
               at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
               at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
               at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
               at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
               at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
               at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
               at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
               at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
               at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
               at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
               at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
               at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
               at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
               at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
               at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
               at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
               at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
               at org.eclipse.jetty.server.Server.handle(Server.java:497)
               at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
               at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
               at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
               at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
               at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
               at java.lang.Thread.run(Thread.java:748)

Related issues

Related to EDIT - bug #7944: TaxonNamePopEditor: name part fields are required ClosedAndreas Kohlbecker

Actions
Related to EDIT - bug #8075: multiple cascade all-delete-orphan exceptions related to DefinedTermBase.representationsClosedAndreas Kohlbecker

Actions
Is duplicate of EDIT - bug #8161: *FilterablePagingProvider classes as transactional readonly spring beansRejectedAndreas Kohlbecker

Actions
Actions

Also available in: Atom PDF