000030707 - RSA VIA L&G / IMG / Aveksa - NamingException thrown when attempting to stop ACM

Document created by RSA Customer Support Employee on Jun 14, 2016Last modified by RSA Customer Support Employee on Apr 21, 2017
Version 2Show Document
  • View in full screen mode

Article Content

Article Number000030707
Applies ToRSA Product Set: Identity Management and Governance
RSA Product/Service Type: Appliance
RSA Version/Condition: 6.9.1
Platform (Other): SUSE Linux
Product Description: IMG R620 Appliance ACM/AFX/Lifecycle
IssueThe IMG console is not reachable and when attempting to stop IMG you get the following stack trace in the console:

acm-691:~ # service aveksa_server stop
Stopping Aveksa Compliance Manager Server:
Exception in thread "main" javax.naming.NamingException: Could not dereference o                                                                                                                                                             bject [Root exception is javax.naming.NameNotFoundException: invoker not bound]
        at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java:1215)
        at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:758)
        at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:627)
        at javax.naming.InitialContext.lookup(InitialContext.java:409)
        at org.jboss.Shutdown.main(Shutdown.java:214)
Caused by: javax.naming.NameNotFoundException: invoker not bound
        at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
        at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
        at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
        at org.jnp.server.NamingServer.lookup(NamingServer.java:267)
        at org.jnp.server.NamingServer.lookup(NamingServer.java:270)
        at sun.reflect.GeneratedMethodAccessor134.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces                                                                                                                                                             sorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:622)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
        at sun.rmi.transport.Transport$1.run(Transport.java:177)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:5                                                                                                                                                             53)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTranspor                                                                                                                                                             t.java:808)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport                                                                                                                                                             .java:667)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.                                                                                                                                                             java:1146)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor                                                                                                                                                             .java:615)
        at java.lang.Thread.run(Thread.java:701)
        at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Stream                                                                                                                                                             RemoteCall.java:273)
        at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:                                                                                                                                                             251)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:160)
        at org.jnp.server.NamingServer_Stub.lookup(Unknown Source)
        at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:667)
        at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:627)
        at javax.naming.InitialContext.lookup(InitialContext.java:409)
        at org.jnp.interfaces.NamingContext.resolveLink(NamingContext.java:1209)
        ... 4 more
CauseIf you look in the aveksaServer.log you will find that the last time the server started it could not bind to the port due to a conflict:
Example:
--- MBeans waiting for other MBeans ---
ObjectName: jboss:service=invoker,type=jrmp
  State: FAILED
  Reason: java.rmi.server.ExportException: Port already in use: 4444; nested exception is:
    java.net.BindException: Address already in use
  I Depend On:
    jboss:service=TransactionManager
  Depends On Me:
    jboss:service=proxyFactory,target=ClientUserTransactionFactory
    jboss:service=proxyFactory,target=ClientUserTransaction
    jboss.jmx:type=adaptor,name=Invoker,protocol=jrmp,service=proxyFactory

This can be caused by a number of different events, but one specific cause was that a 3rd party script was written to stop IMG to perform backups and the script was not cleanly stopping the server.  This prevented the server from coming up cleanly.
ResolutionIf using a custom script to stop services to perform maintenance you must make sure it is cleanly stopping services.
If assistance is needed in creating a custom script to automate shutdown and run administrative tasks, please contact RSA professional services.  RSA support should not be engaged for issues pertaining to scripts not written and provided by RSA.

Attachments

    Outcomes