geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan (JIRA)" <j...@apache.org>
Subject [jira] [Created] (GERONIMO-6079) NPE in MyFacesWebAppContext.doStart() if jsf web application is packaged into an EAR
Date Sat, 16 Jul 2011 13:29:59 GMT
NPE in MyFacesWebAppContext.doStart() if jsf web application is packaged into an EAR
------------------------------------------------------------------------------------

                 Key: GERONIMO-6079
                 URL: https://issues.apache.org/jira/browse/GERONIMO-6079
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: myfaces
    Affects Versions: 3.0
            Reporter: Ivan
            Assignee: Ivan
             Fix For: 3.0


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


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message