NullPointerException if no WEB-INF/lib
--------------------------------------
Key: SHALE-422
URL: https://issues.apache.org/struts/browse/SHALE-422
Project: Shale
Issue Type: Bug
Components: Tiger
Affects Versions: 1.0.4
Environment: Eclipse 3.1 with Tomcat Launcher Plugin
Reporter: Matthias Wuttke
I use the Sysdeo Tomcat Launcher Plugin together with the DevLoaderClasspath
extension in order to debug my application. Because this classpath extension
sets the classpath for Tomcat (including my Maven Repository classpath) I do
not need a WEB-INF/lib directory. (In fact, I do not want to have one on my
source path.)
This causes my application to crash on startup with the following
NullPointerException:
ERROR main
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/teutoFaces] -
Exception sending context initialized event to listener instance of class
org.apache.shale.view.faces.LifecycleListener
javax.faces.FacesException: java.lang.NullPointerException
at
org.apache.shale.tiger.view.faces.LifecycleListener2.contextInitialized(LifecycleListener2.java:276)
at
org.apache.shale.view.faces.LifecycleListener.contextInitialized(LifecycleListener.java:138)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3763)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4211)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
at
org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at
org.apache.catalina.core.StandardService.start(StandardService.java:450)
at
org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
Caused by: java.lang.NullPointerException
at
org.apache.shale.tiger.view.faces.LifecycleListener2.webArchives(LifecycleListener2.java:1513)
at
org.apache.shale.tiger.view.faces.LifecycleListener2.contextInitialized(LifecycleListener2.java:263)
... 25 more
This corresponds to the following code:
List<JarFile> list = new ArrayList<JarFile>();
Set<Object> paths = servletContext.getResourcePaths(WEB_LIB_PREFIX);
for (Object pathObject : paths) {
I think a simple "if (paths != null)" should solve this issue.
Best regards,
Matthias
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.