bug #6355
closedImprove message if server is down
0%
Description
If the remote server is down/not started one gets a very long message (see attachement).
The message should be simplified in a similar way as done in #6209
possible duplicate (although different HTTP response code) #6736
Current stacktrace is:
login : admin editor version : 4.5.0 server : (edit-test) schema version : os : Windows Server 2012 6.2 amd64 java : 1.7.0_65 org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://test.e-taxonomy.eu:80/cdmserver/rem_conf_am/remoting/taxonnode.service]; nested exception is org.apache.http.NoHttpResponseException: Did not receive successful HTTP response: status code = 404, status message = [Not Found] at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.convertHttpInvokerAccessException(HttpInvokerClientInterceptor.java:216) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:147) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208) at com.sun.proxy.$Proxy39.load(Unknown Source) at eu.etaxonomy.taxeditor.editor.TaxonEditorInput.initForTaxonNode(TaxonEditorInput.java:100) at eu.etaxonomy.taxeditor.editor.TaxonEditorInput.<init>(TaxonEditorInput.java:80) at eu.etaxonomy.taxeditor.editor.TaxonEditorInput.NewInstance(TaxonEditorInput.java:212) at eu.etaxonomy.taxeditor.editor.EditorUtil.openTaxonNode(EditorUtil.java:159) at eu.etaxonomy.taxeditor.navigation.NavigationUtil.openEditor(NavigationUtil.java:112) at eu.etaxonomy.taxeditor.navigation.navigator.TaxonNavigator.handleDoubleClick(TaxonNavigator.java:464) at org.eclipse.ui.navigator.CommonNavigator$5.run(CommonNavigator.java:523) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.navigator.CommonNavigator$4.doubleClick(CommonNavigator.java:521) at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:845) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:843) at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1462) at org.eclipse.ui.navigator.CommonViewer.handleDoubleSelect(CommonViewer.java:454) at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1246) at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:249) at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.java:246) at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:307) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at eu.etaxonomy.taxeditor.Application.start(Application.java:24) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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:606) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) Caused by: org.apache.http.NoHttpResponseException: Did not receive successful HTTP response: status code = 404, status message = [Not Found] at org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor.validateResponse(HttpComponentsHttpInvokerRequestExecutor.java:357) at org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor.doExecuteRequest(HttpComponentsHttpInvokerRequestExecutor.java:230) at eu.etaxonomy.taxeditor.service.CdmServiceRequestExecutor.doExecuteRequest(CdmServiceRequestExecutor.java:58) at org.springframework.remoting.httpinvoker.AbstractHttpInvokerRequestExecutor.executeRequest(AbstractHttpInvokerRequestExecutor.java:138) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.executeRequest(HttpInvokerClientInterceptor.java:194) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.executeRequest(HttpInvokerClientInterceptor.java:176) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:144) ... 47 more
The error can be invoked by stopping the server via the management UI http://test.e-taxonomy.eu/cdmserver/manage/index.jsp
Files
Related issues
Updated by Andreas Müller about 7 years ago
- File ServerDown.png ServerDown.png added
Updated by Andreas Müller about 7 years ago
- Related to bug #6209: NPE in DatasourceView added
Updated by Andreas Müller about 7 years ago
- Related to feature request #5839: Improve error message when server can't be reached added
Updated by Andreas Müller about 7 years ago
This is NOT a duplicate for related tickets like #6209 but a separate issue.
Updated by Patrick Plitzner almost 7 years ago
- Related to task #6736: Handle server not available user friendly added
Updated by Patrick Plitzner almost 7 years ago
Andreas M.:
"wie schon öfters erwähnt, sollten wir hier ja versuchen, eine nutzerfreundlichere Fehlermeldung anzuzeigen.
Stimmt mein Gefühl, dass das schwierig ist, weil es in allen möglichen Situationen auftreten kann?
Aber ist es nicht möglich, diesen Fehler z.B. in der MessageUtils oder wie die heißt als Querschnittsproblem abzufangen und eine passende Fehlermeldung anzuzeigen.
Ansonsten werden wir uns hier in Zukunft wohl sehr regelmäßig mit diesen Fehlermeldungen der User herumschlagen müssen / und die User werden regelmäßig unzufrieden sein, dass was nicht funktioniert, obwohl lediglich die Verbindung weg ist.
Als Advanced Feature könnten wir auch noch einen Verbindungscheck einbauen ins UI, wenn dieser Fehler angezeigt wird. Damit kann der User selber testen, ob ein generelles Verbindungsproblem vorliegt. Und einiges andere wäre möglich, um den User zu unterstützen (z.B. Link auf die Managementkonsole, wo er sehen kann, dass der Server neustartet, wann er zuletzt neugestartet wurde, den Testbutton klicken kann etc.)."
Updated by Andreas Müller almost 7 years ago
In the above case the interruption took place during lazy initialization:
login : w.berendsohn editor version : 4.7.0 server : api.cybertaxonomy.org (cybertaxonomy.org) / caryo_amaranthaceae schema version : 4.1.0.0.201607300000 os : Windows 7 6.1 amd64 java : 1.8.0_121 org.eclipse.swt.SWTException: Failed to execute runnable (eu.etaxonomy.taxeditor.remoting.CdmEagerLoadingException: org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://api.cybertaxonomy.org:80/caryo_amaranthaceae/remoting/common.service]; nested exception is org.apache.http.NoHttpResponseException: api.cybertaxonomy.org:80 failed to respond) 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:24) 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: eu.etaxonomy.taxeditor.remoting.CdmEagerLoadingException: org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://api.cybertaxonomy.org:80/caryo_amaranthaceae/remoting/common.service]; nested exception is org.apache.http.NoHttpResponseException: api.cybertaxonomy.org:80 failed to respond at org.hibernate.collection.internal.AbstractPersistentCollection.remoteInitialize(AbstractPersistentCollection.java:1358) at org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:627) at org.hibernate.collection.internal.AbstractPersistentCollection.read(AbstractPersistentCollection.java:167) at org.hibernate.collection.internal.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:184) at org.hibernate.collection.internal.PersistentSet.size(PersistentSet.java:143) at eu.etaxonomy.taxeditor.ui.section.name.NonViralNameDetailSection.checkForMultipleNameUsages(NonViralNameDetailSection.java:121) at eu.etaxonomy.taxeditor.ui.section.name.NonViralNameDetailSection.createToolbar(NonViralNameDetailSection.java:92) at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection.setSectionTitle(AbstractCdmDetailSection.java:158) at eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection.setEntity(AbstractCdmDetailSection.java:127) at eu.etaxonomy.taxeditor.ui.section.name.NonViralNameDetailSection.setTaxonBase(NonViralNameDetailSection.java:135) at eu.etaxonomy.taxeditor.view.detail.CdmSectionPart.setFormInput(CdmSectionPart.java:82) at org.eclipse.ui.forms.ManagedForm.setInput(ManagedForm.java:210) at eu.etaxonomy.taxeditor.view.AbstractCdmDataViewer.refresh(AbstractCdmDataViewer.java:123) at eu.etaxonomy.taxeditor.view.AbstractCdmDataViewer.setInput(AbstractCdmDataViewer.java:109) at eu.etaxonomy.taxeditor.view.detail.DetailsViewer.setInput(DetailsViewer.java:161) at eu.etaxonomy.taxeditor.view.AbstractCdmViewPart.showViewer(AbstractCdmViewPart.java:118) at eu.etaxonomy.taxeditor.view.detail.DetailsViewPart.selectionChanged_internal(DetailsViewPart.java:95) at eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart$DelaySelection.run(AbstractCdmEditorViewPart.java:52) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182) ... 23 more Caused by: org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://api.cybertaxonomy.org:80/caryo_amaranthaceae/remoting/common.service]; nested exception is org.apache.http.NoHttpResponseException: api.cybertaxonomy.org:80 failed to respond at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.convertHttpInvokerAccessException(HttpInvokerClientInterceptor.java:216) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:147) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208) at com.sun.proxy.$Proxy53.initializeCollection(Unknown Source) at eu.etaxonomy.taxeditor.service.CachedCommonServiceImpl.initializeCollection(CachedCommonServiceImpl.java:69) at org.hibernate.collection.internal.AbstractPersistentCollection.remoteInitialize(AbstractPersistentCollection.java:1340) ... 42 more Caused by: org.apache.http.NoHttpResponseException: api.cybertaxonomy.org:80 failed to respond at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:143) at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57) at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:261) at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:165) at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:167) at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:272) at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:124) at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:271) at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184) at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88) at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) at org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor.executeHttpPost(HttpComponentsHttpInvokerRequestExecutor.java:338) at org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor.doExecuteRequest(HttpComponentsHttpInvokerRequestExecutor.java:229) at eu.etaxonomy.taxeditor.service.CdmServiceRequestExecutor.doExecuteRequest(CdmServiceRequestExecutor.java:61) at org.springframework.remoting.httpinvoker.AbstractHttpInvokerRequestExecutor.executeRequest(AbstractHttpInvokerRequestExecutor.java:138) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.executeRequest(HttpInvokerClientInterceptor.java:194) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.executeRequest(HttpInvokerClientInterceptor.java:176) at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:144) ... 47 more
Updated by Patrick Plitzner over 5 years ago
- Is duplicate of feature request #5209: Improve server availability check added
Updated by Patrick Plitzner over 5 years ago
- Status changed from New to Duplicate
Updated by Andreas Müller over 5 years ago
- Target version deleted (
Unassigned CDM tickets)