bug #8099
Error saving name type designation editor due to problem in poupeditor context
100%
Description
Documentation:
Step 1: open Name type of "Geitleriaceae"
Step 2: type name was wrong, select unregistered genus name "Geitleria" from drop down list.
Step 3: insert reference, warning "Botaniska Notiser" available from dropdown list, but in category "generic"
Step 4: edit "Botaniska Notiser" = journal [Role curator]
Step 5: save "Geitleria": no error
Step 6: Back to the page "Edit type name designation" of the "Name type designation editor": Trying to save, but the following exception occurred:
eu.etaxonomy.vaadin.mvp.PopupEditorException: Error saving popup editor - context [user=curator] :Edit registration (TypedEntityReference: Registration#2b503a58-a557-458a-868f-f350e17f7e34) > Edit name type designation (NameTypeDesignation#1847<997421a6-f429-4c88-815d-6787bd26c226>) at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor.save(AbstractPopupEditor.java:448) at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor.lambda$new$fad408e6$1(AbstractPopupEditor.java:174) at sun.reflect.GeneratedMethodAccessor826.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.GeneratedMethodAccessor837.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) Caused by: com.vaadin.data.fieldgroup.FieldGroup$CommitException: Commit failed at com.vaadin.data.fieldgroup.FieldGroup.commit(FieldGroup.java:509) at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor.save(AbstractPopupEditor.java:428) ... 80 more Caused by: com.vaadin.data.fieldgroup.FieldGroup$CommitException: Failed to store data to backend at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor$SaveHandler.postCommit(AbstractPopupEditor.java:374) at com.vaadin.data.fieldgroup.FieldGroup.firePostCommitEvent(FieldGroup.java:625) at com.vaadin.data.fieldgroup.FieldGroup.commit(FieldGroup.java:501) ... 81 more Caused by: java.util.NoSuchElementException: No value present at java.util.Optional.get(Optional.java:135) at eu.etaxonomy.cdm.vaadin.view.registration.RegistrationWorkingsetPresenter.findRegistrationInContext(RegistrationWorkingsetPresenter.java:816) at eu.etaxonomy.cdm.vaadin.view.registration.RegistrationWorkingsetPresenter.onDoneWithTypeDesignationEditor(RegistrationWorkingsetPresenter.java:696) at sun.reflect.GeneratedMethodAccessor873.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$1.onEvent(ScopedEventBus.java:58) at org.vaadin.spring.events.internal.EventBusListenerWrapper.publish(EventBusListenerWrapper.java:55) 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:131) at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:133) at org.vaadin.spring.events.internal.ScopedEventBus.publish(ScopedEventBus.java:121) at eu.etaxonomy.vaadin.mvp.AbstractPopupEditor$SaveHandler.postCommit(AbstractPopupEditor.java:371) ... 83 more
Related issues
Associated revisions
ref #8099 better logging of error conditions and more robust error handling in save()
ref #8099 better logging of error conditions and more robust error handling in save()
History
#1 Updated by Andreas Kohlbecker almost 2 years ago
- Tags set to phycobank
- Subject changed from Error saving popup editor to Error saving name type designation editor due to problem in poupeditor context
- Category set to cdm-vaadin
- Priority changed from New to Highest
- Target version changed from Unassigned CDM tickets to Release 5.6
#2 Updated by Andreas Kohlbecker almost 2 years ago
- Description updated (diff)
#3 Updated by Andreas Kohlbecker almost 2 years ago
Hakllo Henning
ich verstehe Step 2,3 oben nicht, was hat du da genau gemacht?
Andreas
#4 Updated by Andreas Kohlbecker almost 2 years ago
- Status changed from New to Feedback
- Assignee changed from Andreas Kohlbecker to Wolf-Henning Kusber
#5 Updated by Andreas Kohlbecker almost 2 years ago
AHH ich glaube jetzt habe ich es. Ein alter Dump der DB hat mir*Geitleriaceae Kilgore & J.R.Johans.* auf die Sprünge geholfen ....
Der Type-Name war ursprünglich Geitleriaceae Kilgore & J.R.Johans. den hat du auf "Geitleria" geändert ...
aber "Geitleria" ist in meiner Version nicht im System, kam dieser Name erst durch den Import rein?
Das ist alles sehr rätselhaft und Zeitaufwänndig
#6 Updated by Wolf-Henning Kusber almost 2 years ago
Da gab es mehrere Korrekturen und Bearbeitungen [vielleicht ein Spezialproblem, das im normalen Betrieb nicht vorkommt?]: (siehe alte Version)
Journal angebunden
Type Geitleriaceae gelöscht
Name: Geitleria ist durch neuen Import ins System gekommen, wenn das so ist wurde der Name mit Autor versehen.
Kilgore, C., Johansen, J.R., Mai, T. & al., Molecular characterization of Geitleria appalachiana sp. nov. (Nostocales, Cyanobacteria) and formation of Geitleriaceae fam. nov. in - undefined journal - 18(2): 150–163. 2018
Geitleriaceae Kilgore & J.R.Johans. NameType: orig. des., Geitleriaceae Kilgore & J.R.Johans. Kilgore, C. & Johansen, J.R. - in Kilgore, C., Johansen, J.R., Mai, T. & al., Molecular characterization of Geitleria appalachiana sp. nov. (Nostocales, Cyanobacteria) and formation of Geitleriaceae fam. nov. in - undefined journal - 18(2): 150–163. 2018:159
#7 Updated by Wolf-Henning Kusber almost 2 years ago
- Assignee changed from Wolf-Henning Kusber to Andreas Kohlbecker
#8 Updated by Andreas Kohlbecker almost 2 years ago
- Priority changed from Highest to Priority14
can not reproduce
#9 Updated by Andreas Kohlbecker almost 2 years ago
this exception augments another exception which happened during the save() operation. Any information on the original problem is lost.
#10 Updated by Andreas Kohlbecker almost 2 years ago
- Related to bug #8107: NPE when throwing PopupEditorException in AbstractPopupEditor added
#11 Updated by Andreas Kohlbecker almost 2 years ago
- Status changed from Feedback to Resolved
- % Done changed from 0 to 30
#12 Updated by Andreas Kohlbecker over 1 year ago
- Status changed from Resolved to Closed
- % Done changed from 30 to 100
the problem which augments other exceptions has been fixed, since further information on the root cause has been lost it is impossible to do more about this problem - closing this issue therefore.