Connexion distante impossible après changement de paramètre "Version REST" dans la configuration
Quelle est la cause de bogue ?
Modification du paramètre "Vérifier la correspondance exacte de version REST".
Résultat : Erreur "Connection pool shutdown
Comment reproduire le bogue ?
Lorsqu'on change un paramètre dans la config (ici, le paramètre version REST), l'appli demande à redémarrer. On accepte. Elle redémarre. A partir de là, on ne peut plus initier de connexion en mode serveur :
Il faut manuellement quitter l'appli et la ré ouvrir.
Logs
INFO 2017-08-31 14:59:20,120 [AWT-EventQueue-0] ChangeStorageAction : 90 - Start change storage with dbMode:
INFO 2017-08-31 14:59:20,172 [AWT-EventQueue-0] StorageUILauncher : 71 - Will init storageMain
INFO 2017-08-31 14:59:22,887 [AWT-EventQueue-0] UseServerConfigurationUIAction : 68 - Use server configuration: RC5 - 7a - pcauquilweb
INFO 2017-08-31 14:59:22,963 [AWT-EventQueue-0] ObserveServiceMainFactory : 110 - New service created: fr.ird.observe.services.rest.PingServiceRestClient@44432062
INFO 2017-08-31 14:59:22,964 [AWT-EventQueue-0] HResponseBuilder : 140 - execute request: [GET] http://localhost:8080/observeweb7RC5/api/v1/PingService/getServerVersion
ERROR 2017-08-31 14:59:22,965 [AWT-EventQueue-0] HResponseBuilder : 324 - something is wrong here...
java.lang.IllegalStateException: Connection pool shut down
at org.apache.http.util.Asserts.check(Asserts.java:34)
at org.apache.http.pool.AbstractConnPool.lease(AbstractConnPool.java:189)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.requestConnection(PoolingHttpClientConnectionManager.java:257)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:176)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:319)
at io.ultreia.java4all.http.HResponseBuilder.get0(HResponseBuilder.java:184)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:150)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:101)
at fr.ird.observe.services.rest.ObserveServiceRestClientSupport.executeRequest(ObserveServiceRestClientSupport.java:62)
at fr.ird.observe.services.rest.GeneratedPingServiceRestClient.getServerVersion(GeneratedPingServiceRestClient.java:44)
at fr.ird.observe.client.ui.storage.StorageUIModel.testRemote(StorageUIModel.java:1693)
at fr.ird.observe.client.ui.storage.tabs.ConfigUI.doActionPerformed__on__testRemoteAction(ConfigUI.java:219)
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.nuiton.jaxx.runtime.JAXXUtil.lambda$getEventListener$0(JAXXUtil.java:243)
at com.sun.proxy.$Proxy3.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at fr.ird.observe.client.ui.actions.storage.UseServerConfigurationUIAction.lambda$actionPerformed$0(UseServerConfigurationUIAction.java:82)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at fr.ird.observe.client.ui.storage.StorageUIHandler.start(StorageUIHandler.java:119)
at fr.ird.observe.client.ui.storage.StorageUI.start(StorageUI.java:168)
at org.nuiton.jaxx.runtime.swing.wizard.WizardUILancher.start(WizardUILancher.java:122)
at org.nuiton.jaxx.runtime.swing.wizard.WizardUILancher.start(WizardUILancher.java:118)
at fr.ird.observe.client.ui.storage.StorageUILauncher.start(StorageUILauncher.java:86)
at fr.ird.observe.client.ui.storage.StorageUILauncher.changeStorage(StorageUILauncher.java:179)
at fr.ird.observe.client.ui.actions.main.menu.storage.ChangeStorageAction.run(ChangeStorageAction.java:94)
at fr.ird.observe.client.ui.actions.main.menu.storage.ChangeStorageAction.doActionPerformed(ChangeStorageAction.java:80)
at fr.ird.observe.client.ui.actions.main.menu.MenuActionSupport.actionPerformed(MenuActionSupport.java:56)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
ERROR 2017-08-31 14:59:23,001 [AWT-EventQueue-0] StorageUIModel :1783 - Error in test remote
java.lang.IllegalStateException: Connection pool shut down
at org.apache.http.util.Asserts.check(Asserts.java:34)
at org.apache.http.pool.AbstractConnPool.lease(AbstractConnPool.java:189)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.requestConnection(PoolingHttpClientConnectionManager.java:257)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:176)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:319)
at io.ultreia.java4all.http.HResponseBuilder.get0(HResponseBuilder.java:184)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:150)
at io.ultreia.java4all.http.HResponseBuilder.executeRequest(HResponseBuilder.java:101)
at fr.ird.observe.services.rest.ObserveServiceRestClientSupport.executeRequest(ObserveServiceRestClientSupport.java:62)
at fr.ird.observe.services.rest.GeneratedPingServiceRestClient.getServerVersion(GeneratedPingServiceRestClient.java:44)
at fr.ird.observe.client.ui.storage.StorageUIModel.testRemote(StorageUIModel.java:1693)
at fr.ird.observe.client.ui.storage.tabs.ConfigUI.doActionPerformed__on__testRemoteAction(ConfigUI.java:219)
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.nuiton.jaxx.runtime.JAXXUtil.lambda$getEventListener$0(JAXXUtil.java:243)
at com.sun.proxy.$Proxy3.actionPerformed(Unknown Source)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at fr.ird.observe.client.ui.actions.storage.UseServerConfigurationUIAction.lambda$actionPerformed$0(UseServerConfigurationUIAction.java:82)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at fr.ird.observe.client.ui.storage.StorageUIHandler.start(StorageUIHandler.java:119)
at fr.ird.observe.client.ui.storage.StorageUI.start(StorageUI.java:168)
at org.nuiton.jaxx.runtime.swing.wizard.WizardUILancher.start(WizardUILancher.java:122)
at org.nuiton.jaxx.runtime.swing.wizard.WizardUILancher.start(WizardUILancher.java:118)
at fr.ird.observe.client.ui.storage.StorageUILauncher.start(StorageUILauncher.java:86)
at fr.ird.observe.client.ui.storage.StorageUILauncher.changeStorage(StorageUILauncher.java:179)
at fr.ird.observe.client.ui.actions.main.menu.storage.ChangeStorageAction.run(ChangeStorageAction.java:94)
at fr.ird.observe.client.ui.actions.main.menu.storage.ChangeStorageAction.doActionPerformed(ChangeStorageAction.java:80)
at fr.ird.observe.client.ui.actions.main.menu.MenuActionSupport.actionPerformed(MenuActionSupport.java:56)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)