hi  Leonardo

what startup time are u  guys gettting with the deploy myfaces on appengine?

-lp

On 23 May 2012 15:12, Leonardo Uribe <lu4...@gmail.com> wrote:

> Hi
>
> You need to take a look at:
>
> org.apache.myfaces.spi.FacesConfigResourceProvider
> org.apache.myfaces.spi.FaceletConfigResourceProvider
> org.apache.myfaces.spi.AnnotationProvider
>
>
> http://myfaces.apache.org/core21/myfaces-impl/apidocs/org/apache/myfaces/spi/FacesConfigResourceProvider.html
>
> http://myfaces.apache.org/core21/myfaces-impl/apidocs/org/apache/myfaces/spi/FaceletConfigResourceProvider.html
>
> I think the problem is this code:
>
>    public Collection<URL> getMetaInfConfigurationResources(
>            ExternalContext context) throws IOException
>    {
>        List<URL> urlSet = new ArrayList<URL>();
>
>        //This usually happens when maven-jetty-plugin is used
>        //Scan jars looking for paths including META-INF/faces-config.xml
>        Enumeration<URL> resources =
> getClassLoader().getResources(FACES_CONFIG_IMPLICIT);
>        while (resources.hasMoreElements())
>        {
>            urlSet.add(resources.nextElement());
>        }
>
>        //Scan files inside META-INF ending with .faces-config.xml
>        URL[] urls = Classpath.search(getClassLoader(),
> META_INF_PREFIX, FACES_CONFIG_SUFFIX);
>        for (int i = 0; i < urls.length; i++)
>        {
>            urlSet.add(urls[i]);
>        }
>
>        return urlSet;
>    }
>
> Specially the call to Classpath.search(). The code works well, but
> maybe in GAE this operation is very expensive. One option is do not
> scan for .faces-config.xml, or try to scan the jar files directly from
> WEB-INF/lib. Note the call from Classpath.search() is done in the
> annotation scanning part too, so if you found it is a problem, maybe
> we can do the alternative logic and include it inside myfaces core to
> make it work "out of the box" in gae without this problem. Look this
> demo:
>
> http://myfaces.apache.org/core20/googleappenginesupport.html
>
> regards,
>
> Leonardo Uribe
>
> 2012/5/23 lucio piccoli <lu...@asteriski.com>:
> > hi leonardo
> >
> > thanks for the help but there was no difference in startup time.
> >
> > from the log the big time expense is scanning for faces-config.xml.
> >
> >  org.apache.myfaces.config.DefaultFacesConfigurationProvider
> > getClassloaderFacesConfig
> >
> >
> > what other options are there to prevent file scanning?
> >
> >
> > -lp
> >
> >
> > On 22 May 2012 17:26, Leonardo Uribe <lu4...@gmail.com> wrote:
> >
> >> Hi
> >>
> >> MyFaces provides some SPI interfaces that allow to provide web
> >> container specific code in cases like annotation scannig or when it
> >> tries to locate faces-config.xml or .taglib.xml files.
> >>
> >> But first of all, try to setup this web config param:
> >>
> >> org.apache.myfaces.annotation.SCAN_PACKAGES
> >>
> >> Indicate the packages where your managed beans are, separated by
> >> comma. Let us know if that solves your problem, or if you do some SPI
> >> code, it could be good to add it in myfaces core project in someway.
> >>
> >> regards,
> >>
> >> Leonardo Uribe
> >>
> >> 2012/5/22 lucio piccoli <lu...@asteriski.com>:
> >> > the spring issue is exclusive to the myfaces startup.
> >> >
> >> > the myfaces startup seems to be spending its time doing a file scan
> for
> >> > 'faces-config.xml' and other stuff.
> >> > File access speed is known to be poor on GAE.
> >> >
> >> > so is there a way to config myfaces not to file scan?
> >> >
> >> > -lp
> >> >
> >> > On 22 May 2012 17:07, Daniel Reznick <vedm...@gmail.com> wrote:
> >> >
> >> >> Before that,
> >> >>
> >> >> Know that Spring and JSF are known for their SLOW start up time on
> GAE
> >> (I
> >> >> think especially Sping) a short googling can show this , and maybe
> some
> >> >> tricks to speed it up (but it still will be slow...)
> >> >>
> >> >> On Tue, May 22, 2012 at 5:13 AM, lucio piccoli <lu...@asteriski.com>
> >> >> wrote:
> >> >>
> >> >> > hi guys
> >> >> >
> >> >> > i am running myfaces 2.1.6 on appengine 1.6.4.
> >> >> >
> >> >> > the start up time is too long. according to my log 13 seconds of
> wall
> >> >> time.
> >> >> >
> >> >> > this 13 sec is killing my GAE startup time as it has a hardlimit.
> >> >> >
> >> >> > Q1. why is myfaces taking 12 seconds to load?
> >> >> > Q2. how can i reduce the myfaces load time?
> >> >> >
> >> >> > the log snippet is below. the start of the log is once spring
> >> initiation
> >> >> is
> >> >> > complete.
> >> >> >
> >> >> > INFO: Root WebApplicationContext: initialization completed in 9598
> ms
> >> >> > 22/05/2012 1::57:04 AM
> org.apache.myfaces.webapp.Jsp20FacesInitializer
> >> >> > initContainerIntegration
> >> >> > INFO: This application isn't running in a JSP 2.1 container.
> >> >> > 22/05/2012 1:57:04 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getStandardFacesConfig
> >> >> > INFO: Reading standard config META-INF/standard-faces-config.xml
> >> >> > 22/05/2012 1:57:05 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getWebAppFacesConfig
> >> >> > INFO: Reading config /WEB-INF/faces-config.xml
> >> >> > 22/05/2012 1:57:08 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getClassloaderFacesConfig
> >> >> > INFO: Reading config :
> >> >> >
> >> >> >
> >> >>
> >>
> jar:file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/gmaps4jsf-core-1.1.4.jar!/META-INF/faces-config.xml
> >> >> > 22/05/2012 1:57:09 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getClassloaderFacesConfig
> >> >> > INFO: Reading config :
> >> >> >
> >> >> >
> >> >>
> >>
> jar:file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/richfaces-components-ui-4.2.1.Final.jar!/META-INF/faces-config.xml
> >> >> > 22/05/2012 1:57:12 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getClassloaderFacesConfig
> >> >> > INFO: Reading config :
> >> >> >
> >> >> >
> >> >>
> >>
> jar:file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/richfaces-core-impl-4.2.1.Final.jar!/META-INF/faces-config.xml
> >> >> > 22/05/2012 1:57:12 AM
> >> >> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
> >> >> > getClassloaderFacesConfig
> >> >> > INFO: Reading config :
> >> >> >
> >> >> >
> >> >>
> >>
> jar:file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/tomahawk20-1.1.11.jar!/META-INF/faces-config.xml
> >> >> > 22/05/2012 1:57:12 AM org.apache.myfaces.config.LogMetaInfUtils
> >> >> logArtifact
> >> >> > INFO: Artifact 'myfaces-api' was found in version '2.1.6' from path
> >> >> >
> >> >> >
> >> >>
> >>
> 'file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/myfaces-api-2.1.6.jar'
> >> >> > 22/05/2012 1:57:12 AM org.apache.myfaces.config.LogMetaInfUtils
> >> >> logArtifact
> >> >> > INFO: Artifact 'myfaces-impl' was found in version '2.1.6' from
> path
> >> >> >
> >> >> >
> >> >>
> >>
> 'file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/myfaces-impl-2.1.6.jar'
> >> >> > 22/05/2012 1:57:12 AM org.apache.myfaces.config.LogMetaInfUtils
> >> >> logArtifact
> >> >> > INFO: Artifact 'tomahawk20' was found in version '1.1.11' from path
> >> >> >
> >> >> >
> >> >>
> >>
> 'file:/C:/src/miiingle/venueportal/trunk/target/venueportal-1.0-SNAPSHOT/WEB-INF/lib/tomahawk20-1.1.11.jar'
> >> >> > 22/05/2012 1:57:13 AM org.richfaces.resource.ResourceHandlerImpl
> >> <init>
> >> >> > FINE: Instance of org.richfaces.resource.ResourceHandlerImpl
> resource
> >> >> > handler created
> >> >> > 22/05/2012 1:57:13 AM
> org.apache.myfaces.util.ExternalSpecifications
> >> >> > isBeanValidationAvailable
> >> >> > INFO: MyFaces Bean Validation support disabled
> >> >> > 22/05/2012 1:57:15 AM net.sf.jsfcomp.onload.OnLoadPhaseListener
> <init>
> >> >> > INFO: OnLoadPhaseListener created
> >> >> > 22/05/2012 1:57:15 AM
> org.apache.myfaces.application.ApplicationImpl
> >> >> > getProjectStage
> >> >> > INFO: Couldn't discover the current project stage, using Production
> >> >> > 22/05/2012 1:57:15 AM org.apache.myfaces.config.FacesConfigurator
> >> >> > handleSerialFactory
> >> >> > INFO: Serialization provider : class
> >> >> > org.apache.myfaces.shared_impl.util.serial.DefaultSerialFactory
> >> >> > 22/05/2012 1:57:15 AM
> >> >> >
> org.apache.myfaces.config.annotation.DefaultLifecycleProviderFactory
> >> >> > getLifecycleProvider
> >> >> > INFO: Using LifecycleProvider
> >> >> >
> >> >>
> >>
> org.apache.myfaces.config.annotation.NoInjectionAnnotationLifecycleProvider
> >> >> >
> >> >> > --
> >> >> > regards
> >> >> >
> >> >> > -Lucio Piccoli
> >> >> >
> >> >> > Director
> >> >> > ------------------------------
> >> >> > www.asteriski.com
> >> >> >
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > regards
> >> >
> >> > -Lucio Piccoli
> >> >
> >> > Director
> >> > ------------------------------
> >> > www.asteriski.com
> >>
> >
> >
> >
> > --
> > regards
> >
> > -Lucio Piccoli
> >
> > Director
> > ------------------------------
> > www.asteriski.com
>



-- 
regards

-Lucio Piccoli

Director
------------------------------
www.asteriski.com

Reply via email to