KB Article #179267

running as non-root; startup java.lang.UnsatisfiedLinkError libjnimisc.so undefined symbol, vjni not avail

Problem

  • Running as non root, and have followed 7.4.x Admin Guide, section "Run API Gateway as non-root on UNIX/Linux"
  • System may have started as non root before the application of new service pack, and now fails.
  • Startup error like some of the following:
    • java.lang.UnsatisfiedLinkError [...] libjnimisc.so undefined symbol
    • VJNI lib not available
    • cannot add license file [...] does not match license criterion version=7.4 (when it is a good license)
    • ERROR found unsupported XML_SAVE_ [...] option in 'Libxml Parser Options'
    • libjli.so: cannot open shared object file: No such file or directory

Resolution

As part of the setup to allow for running API Gateway as non root user, an /etc/ld.so.conf.d/gateway-libs.conf file was created and ldconfig was run as root.

If you have similar errors, the new install or recently applied service pack may be missing a line in the gateway-libs.conf file. The 7.5.x documentation for running as non-root has the new line, but 7.4.x documentation does not.

Please check if your /etc/ld.so.conf.d/gateway-libs.conf has a line like this:

/opt/Axway-7.4.1/apigateway/Linux.x86_64/jre/lib/amd64/jli

If it does not exist, please add it (using correct path for your install, similar to your existing .../jre/lib/amd64 line).
And then re-run ldconfig as root, like you did when you first followed the run as non root instructions.