Workaround for Error---WRAPPER - start method threw an exception Exception in thread "main" java.lang.NoSuchMethodError: com.tibco.tibrv.Tibrv.encodeString(Ljava/lang/String;)[B

Workaround for Error---WRAPPER - start method threw an exception Exception in thread "main" java.lang.NoSuchMethodError: com.tibco.tibrv.Tibrv.encodeString(Ljava/lang/String;)[B

book

Article ID: KB0084275

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks Plug-in for SAP Solutions -

Description

If a SAP adapter service uses RVCM as the transport, it fails to start under Linux and throws the following error.

++++++++++++++++++++++++++++
Environment variables successfully set 
Processing /tibco/private/adapter/AdapterConfigurations/SAPAdapter/R3AdapterConfiguration/SAPAdapter ... 
WRAPPER - start method threw an exception 
Exception in thread "main" java.lang.NoSuchMethodError: com.tibco.tibrv.Tibrv.encodeString(Ljava/lang/String;)[B 
at com.tibco.tibrv.TibrvCmQueueTransport.<init>(TibrvCmQueueTransport.java:85) 
at com.tibco.sdk.events.pubsub.MRvcmqSession.createRvTransport(MRvcmqSession.java:85) 
at com.tibco.sdk.events.pubsub.MRvdaSession.initRvTransport(MRvdaSession.java:36) 
at com.tibco.sdk.events.MRvSession.init(MRvSession.java:552) 
at com.tibco.sdk.events.MRvSession.<init>(MRvSession.java:196) 
at com.tibco.sdk.MConfigurationUtilities.createRvCmqSession(MConfigurationUtilities.java:239) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readRvCmqSession(MDeploymentDeserializer.java:556) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readAnySupportedType(MDeploymentDeserializer.java:271) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:231) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.internalRead(MPropertyBasedDeserializer.java:187) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:215) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:201) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOf(MPropertyBasedDeserializer.java:195) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readMessaging(MDeploymentDeserializer.java:383) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readAnySupportedType(MDeploymentDeserializer.java:265) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:231) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.internalRead(MPropertyBasedDeserializer.java:187) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:215) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:201) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOf(MPropertyBasedDeserializer.java:195) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readSessions(MDeploymentDeserializer.java:1201) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readAnySupportedType(MDeploymentDeserializer.java:263) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:231) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.internalRead(MPropertyBasedDeserializer.java:187) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:215) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOfFrom(MPropertyBasedDeserializer.java:201) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAllOf(MPropertyBasedDeserializer.java:195) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readDeployment(MDeploymentDeserializer.java:369) 
at com.tibco.sdk.serializer.config.MDeploymentDeserializer.readAnySupportedType(MDeploymentDeserializer.java:331) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:231) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.deserialize(MPropertyBasedDeserializer.java:32) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:228) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.internalRead(MPropertyBasedDeserializer.java:187) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readOptional(MPropertyBasedDeserializer.java:264) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readOptional(MPropertyBasedDeserializer.java:255) 
at com.tibco.sdk.serializer.MConfigDeserializer.readConfig(MConfigDeserializer.java:83) 
at com.tibco.sdk.serializer.MConfigDeserializer.readAnySupportedType(MConfigDeserializer.java:54) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.readAny(MPropertyBasedDeserializer.java:231) 
at com.tibco.sdk.serializer.MPropertyBasedDeserializer.deserialize(MPropertyBasedDeserializer.java:32) 
at com.tibco.sdk.MAppImpl.onConfigDeserialize(MAppImpl.java:339) 
at com.tibco.sdk.MDefaultAppImpl.start(MDefaultAppImpl.java:120) 
at com.tibco.sdk.MApp.start(MApp.java:225) 
at com.tibco.sap.adapter.SAPAdapter.main(Unknown Source) 
++++++++++++++++++++++++++++

The exception is thrown when the adapter loads tibrvnative.jar before tibrvj.jar . In the RV home directory you will find various JAR files which are loaded during the time of application startup. For the SAP application to work the tibrvj.jar should be loaded first.

Issue/Introduction

Unable to start SAP application. Error String --------------- WRAPPER - start method threw an exception Exception in thread "main" java.lang.NoSuchMethodError: com.tibco.tibrv.Tibrv.encodeString(Ljava/lang/String;)

Environment

Linux

Resolution

The following workaround will fix the error in design-time/runtime.

In order to resolve this issue modify the adr3.tra or application.tra file, depending whether it is Design or runtime, and find the property named "tibco.env.STD_CP_EXT". Add "%RV_HOME%/lib/tibrvj.jar" in front of it and make sure “%RV_HOME%/lib/tibrvj.jar” is before “%RV_HOME%/lib”. Doing this ensures that the SAP application loads the tibrvj.jar file before all other JAR files present in RV home.

Additional Information

ASAP-3759