Project

General

Profile

Actions

bug #9629

open

Better handling of OptionalDataException

Added by Katja Luther almost 3 years ago. Updated over 1 year ago.

Status:
In Progress
Priority:
Highest
Assignee:
Category:
taxeditor
Target version:
Start date:
Due date:
% Done:

80%

Estimated time:
Severity:
normal
Found in Version:

Description

This exception should be handled and the user should be informed to restart the editor.

last remote method : http://api.cybertaxonomy.org:80/euromed/remoting/term.service
last remote request client time : 2021-05-19T11:32:16.744
last remote request response header time : Wed, 19 May 2021 11:32:16 GMT
client error time : 2021-05-19T11:32:16.914
login : e.raabstraube
editor version : 5.22.1
server : api.cybertaxonomy.org (cybertaxonomy.org) / euromed
schema version : 5.22.0.0.20210315
os : Windows 7 6.1 amd64
java : 1.8.0_231
org.eclipse.swt.SWTException: Failed to execute runnable (org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://api.cybertaxonomy.org:80/euromed/remoting/term.service]; nested exception is net.sf.ehcache.CacheException: java.io.OptionalDataException)
                at org.eclipse.swt.SWT.error(SWT.java:4533)
                at org.eclipse.swt.SWT.error(SWT.java:4448)
                at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
                at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4211)
                at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3827)
                at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121)
                at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
                at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
                at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)
                at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)
                at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
                at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
                at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
                at eu.etaxonomy.taxeditor.Application.start(Application.java:20)
                at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
                at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
                at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
                at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
                at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
                at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
                at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
Caused by: org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://api.cybertaxonomy.org:80/euromed/remoting/term.service]; nested exception is net.sf.ehcache.CacheException: java.io.OptionalDataException
                at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.convertHttpInvokerAccessException(HttpInvokerClientInterceptor.java:226)
                at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:153)
                at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
                at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
                at com.sun.proxy.$Proxy45.list(Unknown Source)
                at eu.etaxonomy.taxeditor.store.TermStore.getTermsFromService(TermStore.java:115)
                at eu.etaxonomy.taxeditor.store.TermStore.access$0(TermStore.java:110)
                at eu.etaxonomy.taxeditor.store.TermStore$4.getTerms(TermStore.java:214)
                at eu.etaxonomy.taxeditor.store.TermStore.getTerms(TermStore.java:92)
                at eu.etaxonomy.taxeditor.store.TermStore.getTerms(TermStore.java:52)
                at eu.etaxonomy.taxeditor.store.TermManager.getTerms(TermManager.java:334)
                at eu.etaxonomy.taxeditor.ui.section.description.detail.DistributionDetailElement.getStatusListForArea(DistributionDetailElement.java:128)
                at eu.etaxonomy.taxeditor.ui.section.description.detail.DistributionDetailElement.createControls(DistributionDetailElement.java:92)
                at eu.etaxonomy.taxeditor.ui.section.description.detail.DistributionDetailElement.createControls(DistributionDetailElement.java:1)
                at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement.updateContent(AbstractCdmDetailElement.java:106)
                at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement.setEntity(AbstractCdmDetailElement.java:93)
                at eu.etaxonomy.taxeditor.ui.section.description.detail.AbstractDetailedDescriptionDetailElement.<init>(AbstractDetailedDescriptionDetailElement.java:51)
                at eu.etaxonomy.taxeditor.ui.section.description.detail.DistributionDetailElement.<init>(DistributionDetailElement.java:63)
                at eu.etaxonomy.taxeditor.ui.element.CdmFormFactory.createDetailedDescriptionDetailElement(CdmFormFactory.java:3404)
                at eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementDetailElement.createControls(DescriptionElementDetailElement.java:42)
                at eu.etaxonomy.taxeditor.ui.section.description.DescriptionElementDetailElement.createControls(DescriptionElementDetailElement.java:1)
                at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement.updateContent(AbstractCdmDetailElement.java:106)
                at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement.setEntity(AbstractCdmDetailElement.java:93)
                at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection.setEntity(AbstractCdmDetailSection.java:155)
                at eu.etaxonomy.taxeditor.view.detail.CdmSectionPart.setFormInput(CdmSectionPart.java:158)
                at org.eclipse.ui.forms.ManagedForm.setInput(ManagedForm.java:210)
                at eu.etaxonomy.taxeditor.view.e4.AbstractCdmDataViewerE4.refresh(AbstractCdmDataViewerE4.java:158)
                at eu.etaxonomy.taxeditor.view.e4.AbstractCdmDataViewerE4.setInput(AbstractCdmDataViewerE4.java:141)
                at eu.etaxonomy.taxeditor.view.e4.details.DetailsViewerE4.setInput(DetailsViewerE4.java:206)
                at eu.etaxonomy.taxeditor.view.e4.details.DetailsViewerE4.setInput(DetailsViewerE4.java:177)
                at eu.etaxonomy.taxeditor.view.e4.AbstractCdmEditorPartE4.showViewer(AbstractCdmEditorPartE4.java:283)
                at eu.etaxonomy.taxeditor.view.e4.details.DetailsPartE4.selectionChanged_internal(DetailsPartE4.java:107)
                at eu.etaxonomy.taxeditor.view.e4.AbstractCdmEditorPartE4$DelaySelection.run(AbstractCdmEditorPartE4.java:94)
                at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
                at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)
                ... 23 more
Caused by: net.sf.ehcache.CacheException: java.io.OptionalDataException
                at net.sf.ehcache.store.disk.DiskStorageFactory.retrieve(DiskStorageFactory.java:891)
                at net.sf.ehcache.store.disk.Segment.decodeHit(Segment.java:182)
                at net.sf.ehcache.store.disk.Segment.get(Segment.java:225)
                at net.sf.ehcache.store.disk.DiskStore.fault(DiskStore.java:210)
                at net.sf.ehcache.store.CacheStore$4.call(CacheStore.java:198)
                at net.sf.ehcache.store.CacheStore$4.call(CacheStore.java:192)
                at net.sf.ehcache.store.cachingtier.OnHeapCachingTier$Fault.get(OnHeapCachingTier.java:335)
                at net.sf.ehcache.store.cachingtier.OnHeapCachingTier$Fault.access$200(OnHeapCachingTier.java:312)
                at net.sf.ehcache.store.cachingtier.OnHeapCachingTier.get(OnHeapCachingTier.java:176)
                at net.sf.ehcache.store.CacheStore.get(CacheStore.java:192)
                at net.sf.ehcache.Cache.get(Cache.java:1749)
                at net.sf.ehcache.Cache.get(Cache.java:1722)
                at eu.etaxonomy.cdm.api.cache.CdmCacherBase.getCacheElement(CdmCacherBase.java:105)
                at eu.etaxonomy.cdm.api.cache.CdmCacherBase.getFromCache(CdmCacherBase.java:140)
                at eu.etaxonomy.cdm.api.cache.CdmServiceCacher.load(CdmServiceCacher.java:155)
                at eu.etaxonomy.cdm.cache.CdmTransientEntityCacher.putToCache(CdmTransientEntityCacher.java:227)
                at eu.etaxonomy.cdm.cache.CacheLoader.putToCache(CacheLoader.java:294)
                at eu.etaxonomy.cdm.cache.CacheLoader.loadRecursive(CacheLoader.java:321)
                at eu.etaxonomy.cdm.cache.CacheLoader.loadRecursiveAny(CacheLoader.java:83)
                at eu.etaxonomy.cdm.cache.CacheLoader.loadRecursiveCollection(CacheLoader.java:190)
                at eu.etaxonomy.cdm.cache.CacheLoader.load(CacheLoader.java:157)
                at eu.etaxonomy.cdm.cache.CacheLoader.load(CacheLoader.java:66)
                at eu.etaxonomy.cdm.cache.CdmTransientEntityCacher.load(CdmTransientEntityCacher.java:165)
                at eu.etaxonomy.taxeditor.session.CdmEntitySession.load(CdmEntitySession.java:65)
                at eu.etaxonomy.taxeditor.session.CdmEntitySessionManager.load(CdmEntitySessionManager.java:119)
                at org.springframework.remoting.httpinvoker.CachingHttpInvokerProxyFactoryBean.handleGeneralRequest(CachingHttpInvokerProxyFactoryBean.java:105)
                at org.springframework.remoting.httpinvoker.CachingHttpInvokerProxyFactoryBean.executeRequest(CachingHttpInvokerProxyFactoryBean.java:81)
                at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:150)
                ... 56 more
Caused by: java.io.OptionalDataException
                at java.io.ObjectInputStream.readObject0(Unknown Source)
                at java.io.ObjectInputStream.readObject(Unknown Source)
                at java.util.HashSet.readObject(Unknown Source)
                at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
                at java.io.ObjectInputStream.readSerialData(Unknown Source)
                at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
                at java.io.ObjectInputStream.readObject0(Unknown Source)
                at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
                at java.io.ObjectInputStream.readSerialData(Unknown Source)
                at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
                at java.io.ObjectInputStream.readObject0(Unknown Source)
                at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
                at java.io.ObjectInputStream.defaultReadObject(Unknown Source)
                at net.sf.ehcache.Element.readObject(Element.java:885)
                at sun.reflect.GeneratedMethodAccessor66.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
                at java.io.ObjectInputStream.readSerialData(Unknown Source)
                at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
                at java.io.ObjectInputStream.readObject0(Unknown Source)
                at java.io.ObjectInputStream.readObject(Unknown Source)
                at net.sf.ehcache.store.disk.DiskStorageFactory.read(DiskStorageFactory.java:371)
                at net.sf.ehcache.store.disk.DiskStorageFactory.retrieve(DiskStorageFactory.java:887)
                ... 83 more


Related issues

Related to EDIT - bug #9358: OptionalDataException during HTTP invoker call NewKatja Luther

Actions
Actions

Also available in: Atom PDF