Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-21581

(7.3.z) REM3-377 - Use safeClose() in ClientServiceHandle.close()

    XMLWordPrintable

Details

    • Bug
    • Status: Verified (View Workflow)
    • Major
    • Resolution: Done
    • None
    • 7.3.8.CR1, 7.3.8.GA
    • None
    • None

    Description

      When shutting down the server, this exception gets raised:

      11:33:04,028 INFO  [org.jboss.as.server] (Thread-2) WFLYSRV0220: Server shutdown has been requested via an OS signal
      11:33:04,032 ERROR [org.jboss.ejb.client] (MSC service thread 1-3) EJBCLIENT000513: Exception occurred when trying to close the transport provider: java.lang.NullPointerException
      	at org.jboss.remoting3.ClientServiceHandle.closeChannel(ClientServiceHandle.java:144)
      	at org.jboss.ejb.protocol.remote.RemoteEJBReceiver.close(RemoteEJBReceiver.java:211)
      	at org.jboss.ejb.protocol.remote.RemoteTransportProvider.close(RemoteTransportProvider.java:89)
      	at org.jboss.ejb.client.EJBClientContext.close(EJBClientContext.java:630)
      	at org.jboss.as.ejb3.remote.EJBClientContextService.stop(EJBClientContextService.java:181)
      	at org.jboss.msc.service.ServiceControllerImpl$StopTask.stopService(ServiceControllerImpl.java:1795)
      	at org.jboss.msc.service.ServiceControllerImpl$StopTask.execute(ServiceControllerImpl.java:1764)
      	at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1363)
      	at java.lang.Thread.run(Thread.java:748)
      

      The ClientServiceHandle.close() method needs to use safeClose() in case the channel variable has not been initialized, which can happen if the service creation is cancelled or raises an exception.

      Attachments

        Issue Links

          Activity

            People

              spyrkob Bartosz Spyrko-Smietanko
              spyrkob Bartosz Spyrko-Smietanko
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: