[jboss-user] [JBossWS] - NPE when web services are shut down

adinn do-not-reply at jboss.com
Wed Jul 23 09:03:50 EDT 2008


Hi guys,

I found a problem in shutdown processing for JBossWS Native 3.0.2 on 5.0.0.CR1. I'm getting NullPointerExceptions from BareWSFRuntime.stop() as web services are being undeployed. This occurs both for an application web service (the XTS demo) and for the web services deployed in the XTS sar as part of the XTS implementation.

The stack traces are as follows

  | 13:32:45,437 ERROR [WebServiceDeployerPostJSE] Error during undeploy: vfszip:/home/adinn/jboss/jbossas/JBoss_5_0_0_CR1/build/output/jboss-5.0.0.CR1/server/default/deploy/jbossxts.sar/ws-t11.war
  | java.lang.NullPointerException
  | 	at org.jboss.wsf.container.jboss50.BareWSFRuntime.stop(BareWSFRuntime.java:71)
  | 	at org.jboss.wsf.container.jboss50.deployer.ArchiveDeployerHook.undeploy(ArchiveDeployerHook.java:109)
  | 	at org.jboss.wsf.container.jboss50.deployer.AbstractWebServiceDeployer.internalUndeploy(AbstractWebServiceDeployer.java:68)
  | 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112)
  | 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:197)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1189)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1169)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.uninstall(DeployersImpl.java:1144)
  | 	at org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:354)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1406)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1064)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:677)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:455)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:510)
  | 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unload(ProfileServiceBootstrap.java:371)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unloadProfile(ProfileServiceBootstrap.java:332)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.shutdown(ProfileServiceBootstrap.java:160)
  | 	at org.jboss.bootstrap.AbstractServerImpl.shutdownServer(AbstractServerImpl.java:508)
  | 	at org.jboss.bootstrap.AbstractServerImpl$ShutdownHook.run(AbstractServerImpl.java:827)
  | 


  | 13:32:45,438 ERROR [WebServiceDeployerPostJSE] Error during undeploy: vfszip:/home/adinn/jboss/jbossas/JBoss_5_0_0_CR1/build/output/jboss-5.0.0.CR1/server/default/deploy/jbossxts.sar/ws-c11.war
  | java.lang.NullPointerException
  | 	at org.jboss.wsf.container.jboss50.BareWSFRuntime.stop(BareWSFRuntime.java:71)
  | 	at org.jboss.wsf.container.jboss50.deployer.ArchiveDeployerHook.undeploy(ArchiveDeployerHook.java:109)
  | 	at org.jboss.wsf.container.jboss50.deployer.AbstractWebServiceDeployer.internalUndeploy(AbstractWebServiceDeployer.java:68)
  | 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112)
  | 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:197)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1189)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1169)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.uninstall(DeployersImpl.java:1144)
  | 	at org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:354)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1406)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1064)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:677)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:455)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:510)
  | 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unload(ProfileServiceBootstrap.java:371)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unloadProfile(ProfileServiceBootstrap.java:332)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.shutdown(ProfileServiceBootstrap.java:160)
  | 	at org.jboss.bootstrap.AbstractServerImpl.shutdownServer(AbstractServerImpl.java:508)
  | 	at org.jboss.bootstrap.AbstractServerImpl$ShutdownHook.run(AbstractServerImpl.java:827)
  | 

  | 13:32:45,437 ERROR [WebServiceDeployerPostJSE] Error during undeploy: vfszip:/home/adinn/jboss/jbossas/JBoss_5_0_0_CR1/build/output/jboss-5.0.0.CR1/server/default/deploy/jbossxts.sar/ws-t11.war
  | java.lang.NullPointerException
  | 	at org.jboss.wsf.container.jboss50.BareWSFRuntime.stop(BareWSFRuntime.java:71)
  | 	at org.jboss.wsf.container.jboss50.deployer.ArchiveDeployerHook.undeploy(ArchiveDeployerHook.java:109)
  | 	at org.jboss.wsf.container.jboss50.deployer.AbstractWebServiceDeployer.internalUndeploy(AbstractWebServiceDeployer.java:68)
  | 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112)
  | 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:197)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1189)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1169)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.uninstall(DeployersImpl.java:1144)
  | 	at org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:354)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1406)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1064)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:677)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:455)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:510)
  | 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unload(ProfileServiceBootstrap.java:371)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unloadProfile(ProfileServiceBootstrap.java:332)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.shutdown(ProfileServiceBootstrap.java:160)
  | 	at org.jboss.bootstrap.AbstractServerImpl.shutdownServer(AbstractServerImpl.java:508)
  | 	at org.jboss.bootstrap.AbstractServerImpl$ShutdownHook.run(AbstractServerImpl.java:827)
  | 13:32:45,438 ERROR [WebServiceDeployerPostJSE] Error during undeploy: vfszip:/home/adinn/jboss/jbossas/JBoss_5_0_0_CR1/build/output/jboss-5.0.0.CR1/server/default/deploy/jbossxts.sar/ws-c11.war
  | java.lang.NullPointerException
  | 	at org.jboss.wsf.container.jboss50.BareWSFRuntime.stop(BareWSFRuntime.java:71)
  | 	at org.jboss.wsf.container.jboss50.deployer.ArchiveDeployerHook.undeploy(ArchiveDeployerHook.java:109)
  | 	at org.jboss.wsf.container.jboss50.deployer.AbstractWebServiceDeployer.internalUndeploy(AbstractWebServiceDeployer.java:68)
  | 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112)
  | 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:197)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1189)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1169)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.uninstall(DeployersImpl.java:1144)
  | 	at org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:354)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1406)
  | 	at org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1064)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:677)
  | 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:455)
  | 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:510)
  | 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unload(ProfileServiceBootstrap.java:371)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.unloadProfile(ProfileServiceBootstrap.java:332)
  | 	at org.jboss.system.server.profileservice.ProfileServiceBootstrap.shutdown(ProfileServiceBootstrap.java:160)
  | 	at org.jboss.bootstrap.AbstractServerImpl.shutdownServer(AbstractServerImpl.java:508)
  | 	at org.jboss.bootstrap.AbstractServerImpl$ShutdownHook.run(AbstractServerImpl.java:827)
  | 

The WSFRuntime has a null value in its deploymentManager field. This can only happen if it has not been initialised after creation. I debugged the error and noticed that ArchiveDeployerHook.undeploy will create a new runtime when shutting down a web service if the current runtime is null.

Presumably this is happening because the runtime which started the web services has been closed down before the web services and then a new instance recreated by ArchiveDeployerHook in an environment where it cannot obtain a deploymentManager when it initialises.

Please note that the XTS service does not declare a service/bean dependency on JBossWS because of another issue to do with start-up (see JBWS-2246). Nevertheless, the problem is obviously not just to do with service dependencies because the XTS demo application is a simple app rather than a service and should not be expected to declare dependencies upon JBossWS services/beans in order to be started and stopped correctly.


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4166135#4166135

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4166135



More information about the jboss-user mailing list