Hi, Dev: I packaged a web app with jsf features into an EAR, and deployed it, but got an NPE when starting MyFacesWebAppContext gbean. This is related with code line in MyFacesModuleBuilderExtension
*AbstractName myFacesWebAppContextName = moduleContext.getNaming().createChildName(moduleName, "myFacesWebAppContext", "MyFacesWebAppContext");* * * In an EAR, ModuleContext abstract name is like: org.apache.geronimo.daytrader/daytrader/ 3.0.0.0/car?j2eeType=J2EEApplication,name=org.apache.geronimo.daytrader/daytrader/3.0.0.0/car The result won't contain "WebModule" But in an WAR is like com.apache.geronimo.samples/jsf/3.0.0.0/car?J2EEApplication=null,* WebModule=com.apache.geronimo.samples/jsf/3.0.0.0/car # **contaning WebModule* The result contains "WebModule" After constructing MyFacesWebAppContext GBean, and start it as below, *public String getWebModuleName(){* * return abName.getNameProperty(NameFactory.WEB_MODULE); **# **NameFactory.WEB_MODULE value is "WebModule"* * }* * * * @Override* * public void doStart() throws Exception {* * MYFACES_WEBAPP_CONTEXTS.put(getWebModuleName(), this);* * }* trying to find a *WebModule* string in its abstract name, but if jsf web app is in an ear, its abstractname doesn't contain *WebModule*, coz of its parent is an EAR, whose abstract name doesn't include WebModule. This code only work when jsf web app is standalone. What i think is change MyFacesWebAppContext mapping way or change myfaceswebappcontext abstractname generation way,not sure which is better. Appreciate if somebody can shadow some lights on it. -- viola Apache Geronimo