[jboss-jira] [JBoss JIRA] (WFLY-2962) NPE during deployment of an exploded war, containing jar with resources

Alexander Nikitin (JIRA) issues at jboss.org
Wed Feb 19 01:01:58 EST 2014


Alexander Nikitin created WFLY-2962:
---------------------------------------

             Summary: NPE during deployment of an exploded war, containing jar with resources
                 Key: WFLY-2962
                 URL: https://issues.jboss.org/browse/WFLY-2962
             Project: WildFly
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: Web (Undertow)
    Affects Versions: 8.0.0.Final
            Reporter: Alexander Nikitin
            Assignee: Stuart Douglas


How to repeat:
Scratch maven Web Application with dependency, f.e. org.primefaces:primefaces
goes into:

{noformat}
12:28:10,624 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (MSC service thread 1-3) Critical error during deployment: : com.sun.faces.config.ConfigurationException: java.util.concurrent.ExecutionException: java.lang.NullPointerException
	at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:751) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:349) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:214) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:173) [undertow-servlet-1.0.0.Final.jar:1.0.0.Final]
	at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:187) [undertow-servlet-1.0.0.Final.jar:1.0.0.Final]
	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:86)
	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.start(UndertowDeploymentService.java:71)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0]
	at java.lang.Thread.run(Thread.java:744) [rt.jar:1.8.0]
Caused by: java.util.concurrent.ExecutionException: java.lang.NullPointerException
	at java.util.concurrent.FutureTask.report(FutureTask.java:122) [rt.jar:1.8.0]
	at java.util.concurrent.FutureTask.get(FutureTask.java:192) [rt.jar:1.8.0]
	at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:738) [jsf-impl-2.2.5-jbossorg-3.jar:]
	... 11 more
Caused by: java.lang.NullPointerException
	at io.undertow.servlet.spec.ServletContextImpl.getResourcePaths(ServletContextImpl.java:206) [undertow-servlet-1.0.0.Final.jar:1.0.0.Final]
	at com.sun.faces.config.configprovider.WebAppFlowConfigResourceProvider.getResources(WebAppFlowConfigResourceProvider.java:79) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at com.sun.faces.config.ConfigManager$URITask.call(ConfigManager.java:1306) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at com.sun.faces.config.ConfigManager$URITask.call(ConfigManager.java:1275) [jsf-impl-2.2.5-jbossorg-3.jar:]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0]
	at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:729) [jsf-impl-2.2.5-jbossorg-3.jar:]
	... 11 more
{noformat}

during exploded deployment.

which is caused by 
{noformat}
org.wildfly.extension.undertow.deployment.VirtualFileResource.getResourceManagerRoot()
{noformat}
always returning null
which is dereferenced by
{noformat}
io.undertow.servlet.spec.ServletContextImpl.getResourcePaths(final String path)
{noformat}

Patching 
VirtualFileResource.getResourceManagerRoot()
as 
return new File("");
works for me, but i'm not sure about getResourceManagerRoot() contract saying that it may actually return null if the resource does not map to a file.
>From my point of view Resource interface should have stronger contract concerning nulls


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list