Welcome Guest! Log in
×

Notice

The forum is in read only mode.
Stambia versions 2.x, 3.x, S17, S18, S19 and S20 are reaching End of Support January, 15th, 2024. Please consider upgrading to the supported Semarchy xDI versions. See Global Policy Support and the Semarchy Documentation.

The Stambia User Community is moving to Semarchy! All the applicable resources have already been moved or are currently being moved to their new location. Read more…

Topic-icon Question Could not connect to runtime from Analytics

More
17 Dec 2019 10:33 #1 by cbouin
Hello,

I am experiencing issues while connecting my freshly installed Analytics to my runtimes.
(everything works fine connecting to them through the Designer)

Could you please advise?

Analytics version is 3.1.0_201907311451
Runtimes version is 17.6.8

Here is the message displayed when testing the connection:
error unmarshalling return; nested exception is: java.lang.ClassNotFoundException: com.indy.engine.common.IEngineConnection (no security manager: RMI class loader disabled)

Here is the error message found in Analytics "Error log" screen:
Message: FrameworkEvent ERROR
Stack trace: 
java.lang.NullPointerException
	at com.eclipsesource.jaxrs.publisher.internal.JAXRSConnector.registerResource(JAXRSConnector.java 189)
	at com.eclipsesource.jaxrs.publisher.internal.JAXRSConnector.registerResource(JAXRSConnector.java 171)
	at com.eclipsesource.jaxrs.publisher.internal.JAXRSConnector.doAddResource(JAXRSConnector.java 165)
	at com.eclipsesource.jaxrs.publisher.internal.JAXRSConnector.addResource(JAXRSConnector.java 159)
	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.delegateAddService(ResourceTracker.java 46)
	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java 40)
	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java 943)
	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java 1)
	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java 256)
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java 229)
	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java 903)
	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java 113)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java 985)
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java 234)
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java 151)
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java 866)
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java 804)
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java 130)
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java 228)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java 525)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java 544)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java 1071)
	at com.indy.repository.rest.Activator.start(Activator.java 29)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java 842)
	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java 1)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java 834)
	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java 791)
	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java 1013)
	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java 365)
	at org.eclipse.osgi.container.Module.doStart(Module.java 598)
	at org.eclipse.osgi.container.Module.start(Module.java 462)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$1.run(ModuleContainer.java 1820)
	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$2$1.execute(EquinoxContainerAdaptor.java 150)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java 1813)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java 1770)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java 1735)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java 1661)
	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java 1)
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java 234)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java 345)
Session data:
eclipse.buildId=unknown
java.version=1.8.0_51
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=rap, NL=en_GB
Framework arguments:  -registryMultiLanguage
Command-line arguments:  -registryMultiLanguage -console -ws rap

Here is the tomcat output:
17/12/2019 10:08:45,422 DEBUG DataModel.java - Runtime Synch APPETLRE701(APPETLRE701:42000) start
java.rmi.RemoteException: error unmarshalling return; nested exception is:
        java.lang.ClassNotFoundException: com.indy.engine.common.IEngineConnection (no security manager: RMI class loader disabled)
        at com.indy.engine.common.EngineFactory.getRmiEngine(EngineFactory.java 264)
        at com.indy.engine.common.EngineFactory.getEngine(EngineFactory.java 222)
        at com.indy.engine.common.EngineFactory.getEngine(EngineFactory.java 171)
        at com.indy.engine.log.engine.EngineRegistry.getEngine(EngineRegistry.java 91)
        at com.stambia.ui.navigator.internal.data.DataModel$RuntimeSynchronizer$1.run(DataModel.java 461)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java 63)
17/12/2019 10:08:45,562 DEBUG DataModel.java - Runtime Synch APPETLRE701(APPETLRE701:42000) end
java.rmi.RemoteException: error unmarshalling return; nested exception is:
        java.lang.ClassNotFoundException: com.indy.engine.common.IEngineConnection (no security manager: RMI class loader disabled)
        at com.indy.engine.common.EngineFactory.getRmiEngine(EngineFactory.java 264)
        at com.indy.engine.common.EngineFactory.getEngine(EngineFactory.java 222)
        at com.indy.engine.common.EngineFactory.getEngine(EngineFactory.java 171)
        at com.indy.engine.log.engine.EngineRegistry.getEngine(EngineRegistry.java 91)
        at com.indy.engine.log.engine.EngineLog.connect(EngineLog.java 88)
        at com.indy.engine.log.engine.EngineLog.connect(EngineLog.java 141)
        at com.indy.engine.log.engine.EngineLog.test(EngineLog.java 71)
        at com.indy.engine.log.EngineSessionManager.testRuntime(EngineSessionManager.java 1470)
        at com.stambia.ui.execution.logs.page.RuntimePage$3$1.execute(RuntimePage.java 213)
        at com.stambia.ui.tools.ProgressBarPopUp$1.run(ProgressBarPopUp.java 41)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread$1.run(ModalContext.java 127)
        at org.eclipse.rap.rwt.internal.lifecycle.ContextUtil.runNonUIThreadWithFakeContext(ContextUtil.java 67)
        at org.eclipse.rap.rwt.internal.service.UISessionImpl.exec(UISessionImpl.java 251)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java 122)

I can't see anything in runtime's log.

I am able to connect to the designer's embedded runtime on localhost.
Designer version is 19.0.18.20190416_161833
More
17 Dec 2019 11:26 #2 by Thomas BLETON
Replied by Thomas BLETON on topic Could not connect to runtime from Analytics
Hello,

What is the tomcat version ?
How is the network/architecture : Runtime and Analytics servers are on the same network ? or on remote networks ?
Apart this issue, is Analytics working (creating Projects, editing Preferences, etc.) ?
More
17 Dec 2019 11:46 #3 by cbouin
Replied by cbouin on topic Could not connect to runtime from Analytics
Tomcat version is 9.0.30
The Analytics and Runtime servers are not in the same network, but can communicate through port 42000 (the Designer is on the same network as Analytics, and can connect to the Runtimes)
Other Analytics features seem to be OK, I didn't encounter any other issue.
More
17 Dec 2019 11:47 - 17 Dec 2019 11:49 #4 by cbouin
Replied by cbouin on topic Could not connect to runtime from Analytics
A Wireshark capture on Runtime server displays a TLSv1.2 Handshake failure
Last edit: 17 Dec 2019 11:49 by cbouin.
More
17 Dec 2019 12:04 #5 by Thomas BLETON
Replied by Thomas BLETON on topic Could not connect to runtime from Analytics
"TLSv1.2 Handshake failure" => is the Runtime "secured" with the parameter "rmiEnableTls" ?

By the way, analytics documentation says : "Apache Tomcat 9 not supported".
Can you retry with Tomcat 8 or 8.5 ?
I'm not 100% sure it is the reason, but let's stick to what is stated ;)
More
18 Dec 2019 10:23 #6 by cbouin
Replied by cbouin on topic Could not connect to runtime from Analytics
Hello,

I tried with tomcat 8.5.50, it still fails with the same error message.

in engineParameters.xml, I have this line:
<parameter name="rmiEnableTls" value="false"/>
More
19 Dec 2019 18:04 #7 by cbouin
Replied by cbouin on topic Could not connect to runtime from Analytics
The stambia support could not reproduce on it's side. The issue seems to be related to TLS feature, which is configured to false...
They provided a workaround, usin the SOAP services:
in the runtime configuration field "Host", use "http://ServerName", and in the field "Port", use the port "42200"
More
26 Dec 2019 15:58 #8 by Thomas BLETON
Replied by Thomas BLETON on topic Could not connect to runtime from Analytics
Hi,
A quick followup : we finally could reproduce the error.
It seems to be related to the "security" features (users) in the Runtime.
Our r&d team is now analyzing the cause and we will provide a solution as soon as we find it.