Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi,
I'm trying to migrate a route from Talend 6.4.1 to 7.1.1. The route creates a REST service that is published to the Talend Runtime, but when I try to start the route Talend always ask me to install third party modules (javax.ws.rs-api-2.0.1.jar). The Download and install all modules button is greyed out so I downloaded the .jar file manually and added it. But after adding it Talend returns to compiling the route and shows a warning that the javax.ws.rs-api-2.0.1.jar is missing. It continues with compiling at ask for the .jar file again, only this time I can't add the file manually and when I hit cancel again it shows me the warning and continues with compiling.
After the Studio finishes compiling the studio tries to deploy the artifact to the local runtime. Finally, in the execution window the startup message from the runtime is shown and it says that the endpoint was deployed and thats it.
In the logs I found the following exception:
2019-07-01T15:33:30,512 | WARN | sshd-SshServer[3a4794f1]-nio2-thread-2 | org.jline.utils.Log 117 | 182 - org.jline - 3.6.2 | Unable to retrieve infocmp for type dummy java.io.IOException: Cannot run program "infocmp": CreateProcess error=2, Das System kann die angegebene Datei nicht finden at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) ~[?:?] at org.jline.utils.InfoCmp.getInfoCmp(InfoCmp.java:548) ~[?:?] at org.jline.terminal.impl.AbstractTerminal.parseInfoCmp(AbstractTerminal.java:169) ~[?:?] at org.jline.terminal.impl.LineDisciplineTerminal.<init>(LineDisciplineTerminal.java:112) ~[?:?] at org.jline.terminal.impl.ExternalTerminal.<init>(ExternalTerminal.java:51) ~[?:?] at org.jline.terminal.impl.ExternalTerminal.<init>(ExternalTerminal.java:43) ~[?:?] at org.apache.karaf.shell.ssh.SshTerminal.<init>(SshTerminal.java:44) ~[?:?] at org.apache.karaf.shell.ssh.ShellFactoryImpl$ShellImpl.start(ShellFactoryImpl.java:103) ~[?:?] at org.apache.sshd.server.channel.ChannelSession.sendResponse(ChannelSession.java:363) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.channel.AbstractChannel.handleUnknownChannelRequest(AbstractChannel.java:300) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.channel.AbstractChannel.handleChannelRequest(AbstractChannel.java:282) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.channel.AbstractChannel.handleRequest(AbstractChannel.java:244) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractConnectionService.channelRequest(AbstractConnectionService.java:484) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractConnectionService.process(AbstractConnectionService.java:328) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:566) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:499) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1413) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:460) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:66) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.io.nio2.Nio2Session.handleReadCycleCompletion(Nio2Session.java:284) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:264) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:261) ~[145:org.apache.sshd.core:1.6.0] at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.lambda$completed$0(Nio2CompletionHandler.java:38) ~[145:org.apache.sshd.core:1.6.0] at java.security.AccessController.doPrivileged(Native Method) ~[?:?] at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.completed(Nio2CompletionHandler.java:37) [145:org.apache.sshd.core:1.6.0] at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:126) [?:?] at sun.nio.ch.Invoker$2.run(Invoker.java:218) [?:?] at sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?] at java.lang.Thread.run(Thread.java:748) [?:?] Caused by: java.io.IOException: CreateProcess error=2, Das System kann die angegebene Datei nicht finden at java.lang.ProcessImpl.create(Native Method) ~[?:?] at java.lang.ProcessImpl.<init>(ProcessImpl.java:386) ~[?:?] at java.lang.ProcessImpl.start(ProcessImpl.java:137) ~[?:?] at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) ~[?:?] ... 30 more
Didn't someone encounter a similar problem while migrating to 7.1.1?
Thanks in advance.
Kind regards,
Lucas
Hi,
thanks for the answer, I added the jar via a cConfig component and it worked and the warning message is gone.
Sadly the route still doesn't start.
I tried to start the route in the studio runtime to get an error message, because when I compiled the route and exported it to the runtime I never got an error.
I got the following error (7.1.1):
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/C:/Talend/7.1.1/studio/configuration/.m2/repository/org/talend/libraries/activemq-all-5.15.5/6.0.0-SNAPSHOT/activemq-all-5.15.5-6.0.0-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/Talend/7.1.1/studio/configuration/.m2/repository/org/talend/libraries/slf4j-log4j12-1.7.10/6.0.0/slf4j-log4j12-1.7.10-6.0.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/Talend/7.1.1/studio/configuration/.m2/repository/org/talend/libraries/slf4j-log4j12-1.7.2/6.0.0/slf4j-log4j12-1.7.2-6.0.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/Talend/7.1.1/studio/configuration/.m2/repository/org/talend/libraries/slf4j-log4j12-1.7.5/6.0.0/slf4j-log4j12-1.7.5-6.0.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/osgi] Offending resource: class path resource [META-INF/spring/noli.xml] org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/osgi] Offending resource: class path resource [META-INF/spring/noli.xml] at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:70) at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:118) at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:110) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.error(BeanDefinitionParserDelegate.java:301) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1407) at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1400) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:172) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:142) at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:94) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:508) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:392) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:614) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:515) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) at esb_all.noli_0_1.NOLi$8.createContext(NOLi.java:954) at org.apache.camel.main.Main.getCamelContextMap(Main.java:167) at org.apache.camel.main.MainSupport.postProcessContext(MainSupport.java:526) at org.apache.camel.main.Main.doStart(Main.java:136) at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) at org.apache.camel.main.MainSupport.run(MainSupport.java:168) at esb_all.noli_0_1.NOLi.run(NOLi.java:1134) at esb_all.noli_0_1.NOLi.runJobInTOS(NOLi.java:1505) at esb_all.noli_0_1.NOLi.main(NOLi.java:1475)
The binding errors result from using the studio runtime. But the other error shows that there is a problem with the spring configuration (http://www.springframework.org/schema/osgi). After a guick google search it seems like I had to add a dependecy to resolve this error so I tried to add the spring-osgi-core library to the project via the dependency editor but that didn't worked.
Kind regards,
Lucas