Saturday, March 21, 2015

How to fix "Bundled JRE is not binary compatible with host OS/Arch or it is corrupt. Testing bundled JRE failed." error while installing TIBCO EMS 8.1 on Ubuntu 14.04 LTS 64-bits

During the installation of EMS 8.1 in console mode on Ubuntu 14.04, I encountered an error that you typically get when you're trying to run 32-bit executable files in a 64-bit multi-arch Ubuntu version.

The solution is to simply add i386 architecture by runinng the following commands:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386

After running these commands successfully, restart your installation by running the TIBCO Universal Installer again. 

Tuesday, March 17, 2015

How to solve the TIBCO Silver Fabric issue: engine stuck on status 'allocating'

After installing the 64-bit distributions of TIBCO Silver Fabric on my Windows 7 machine, I encountered an error when I started up a Stack containing components Administrator and BusinessWorks (from the TIBCO Silver Fabric Enabler for ActiveMatrix BusinessWorks 2.6.0). The engine where Silver Fabric is trying to run Administrator is stuck on status "allocating".

This is an excerpt from the engine logging:
10/13/14 07:39:24.994 INFO: [ProcessWrapper] [STDERR] TibrvException[error=901,message=Library not found: tibrvj]
10/13/14 07:39:24.994 INFO: [ProcessWrapper] [STDERR] at com.tibco.tibrv.Tibrv.loadLib(
10/13/14 07:39:24.994 INFO: [ProcessWrapper] [STDERR] at 10/13/14 07:39:25.009 INFO: [ProcessWrapper] [STDERR] TibrvException[error=27,message=Native implementation required]
10/13/14 07:39:25.025 INFO: [ProcessWrapper] [STDERR] at
10/13/14 07:39:25.025 INFO: [ProcessWrapper] [STDERR] at com.tibco.tibrv.TibrvRvdTransport.init(
10/13/14 07:39:25.041 INFO: [ProcessWrapper] [STDERR] at
10/13/14 07:39:25.041 INFO: [ProcessWrapper] [STDERR] at com.tibco.tibrv.TibrvRvdTransport.(
10/13/14 07:39:25.041 INFO: [ProcessWrapper] [STDERR] at COM.TIBCO.hawk.agent.AgentTibrvTransports.initTransports(

At first, I thought that the RV_HOME system variable wasn't setup properly because of the "Native implementation required" message in the logs. To investigate this, I found an article that explained how to test if the tibrvj library could load propery. After executing the JAR file, the following exception returned:
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\TIBCO\tibrv\8.2\bin\tibrvj.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform

Usually this means that correct C++ runtime components are missing. After installing the correct Microsoft Visual C++ Redistributable Package version, the problem was solved!