NetWorker REST API fails to load with "librestapi64.so already loaded in another classloader"

Resumen: NetWorker Representational State Transfer Application Programming Interfaces (REST API) operations fail. HTTP 500 (Internal Server Error) "java.lang.UnsatisfiedLinkError: Native Library /nsr/authc/webapps/nwrestapi/WEB-INF/lib/librestapi64.so already loaded in another classloader" appears. The librestapi64 library is in a DEL state. ...

Este artículo se aplica a Este artículo no se aplica a Este artículo no está vinculado a ningún producto específico. No se identifican todas las versiones del producto en este artículo.

Síntomas

  • NetWorker RESTAPI fails to load throwing: "java.lang.UnsatisfiedLinkError: Native Library /nsr/authc/webapps/nwrestapi/WEB-INF/lib/librestapi64.so already loaded in another classloader"
HTTP Status 500 - Servlet.init() for servlet nwrestapi threw exception

type Exception report

message Servlet.init() for servlet nwrestapi threw exception

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Servlet.init() for servlet nwrestapi threw exception
	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
	org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
	org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1775)
	org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1734)
	java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	java.lang.Thread.run(Unknown Source)

root cause

java.lang.UnsatisfiedLinkError: Native Library /nsr/authc/webapps/nwrestapi/WEB-INF/lib/librestapi64.so already loaded in another classloader
	java.lang.ClassLoader.loadLibrary0(Unknown Source)
	java.lang.ClassLoader.loadLibrary(Unknown Source)
	java.lang.Runtime.load0(Unknown Source)
	java.lang.System.load(Unknown Source)
	com.emc.nw.webapi.WebApiServlet.loadDbSessionModules(WebApiServlet.java:75)
	com.emc.nw.webapi.WebApiServlet.init(WebApiServlet.java:55)
	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
	org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
	org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1775)
	org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1734)
	java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	java.lang.Thread.run(Unknown Source)

  • The NetWorker server version and Operating System meet compatibility requirements.
  • The lsof command shows the library in a DEL state:
[root@nw_server ~]#  lsof | grep librestapi64
jsvc       4543 nsrtomcat  DEL       REG              253,2   14881546   67764661 /nsr/authc/webapps/nwrestapi/WEB-INF/lib/librestapi64.so

Causa

The library is in a DEL state (stale library file descriptor). This prevents the normal library from loading; thus the error shows "already loaded in another classloader."

Resolución

Información adicional

The java.lang.UnsatisfiedLinkError can also appear if the NetWorker version does not support the operating system of the NetWorker server: NetWorker: REST API requests fail with HTTP 500 java.lang.UnsatisfiedLinkError

Productos afectados

NetWorker

Productos

NetWorker
Propiedades del artículo
Número del artículo: 000037878
Tipo de artículo: Solution
Última modificación: 13 may 2025
Versión:  4
Encuentre respuestas a sus preguntas de otros usuarios de Dell
Servicios de soporte
Compruebe si el dispositivo está cubierto por los servicios de soporte.