myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leonardo Uribe <lu4...@gmail.com>
Subject Re: myfaces slow startup on GAE
Date Wed, 23 May 2012 15:35:14 GMT
Hi

I have created this issue:

https://issues.apache.org/jira/browse/MYFACES-3553

and attached a patch with the proposed feature. It reduces the time to
deploy helloworld demo in 4 seconds, so now only takes 9 seconds,
which is a lot because only 3 seconds are dedicated to start MyFaces.
I think it is good enough, and with the improvements in performance
already done, looks very good.

Suggestions are welcome.

regards,

Leonardo Uribe

2012/5/23 Daniel Reznick <vedmack@gmail.com>:
> Anything that can speed up JSF on GAE is more than welcomed :)
>
> On Wed, May 23, 2012 at 4:21 PM, Leonardo Uribe <lu4242@gmail.com> wrote:
>
>> Hi
>>
>> I tried to create some code and I was able to reduce the time from
>> 13238ms to 9192ms (the first time I get 7616ms, so the time can vary
>> according to the load).
>>
>> I think in this case the problem is Spring more than MyFaces. The
>> results shows that Classpath.search is fast in GAE, and if you try to
>> reduce the time scanning /WEB-INF/lib/, you will get the same time.
>>
>> Anyway, maybe it is a good idea to add a web config param:
>>
>> org.apache.myfaces.GAE_JSF_JAR_FILES
>>
>> To help MyFaces to find the jar file names under /WEB-INF/lib that
>> contains JSF annotations or related resources, and in that way prevent
>> scan the whole classpath when the application starts.
>>
>> What do you think? it is worth to do it? Maybe this is now something
>> to discuss under myfaces dev list.
>>
>> Suggestions are welcome.
>>
>> regards,
>>
>> Leonardo Uribe
>>
>> 2012/5/23 Leonardo Uribe <lu4242@gmail.com>:
>> > Hi
>> >
>> > I tried to run a simple helloworld demo as the instructions says with
>> > Intellij. See it here:
>> >
>> > http://lu4242.appspot.com
>> >
>> > Here is the log (the lastest request is first, see log below):
>> >
>> > It takes 7616ms to start the app.
>> >
>> > The config takes from
>> >
>> >    I 2012-05-23 01:44:21.428
>> > org.apache.myfaces.webapp.AbstractFacesInitializer initFaces:
>> > ServletContext initialized.
>> >
>> > to
>> >
>> >    2012-05-23 01:44:24.228 /home.jsf 200 7616ms 1kb Mozilla/5.0
>> > (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
>> >
>> > I think it is possible to have a faster setup, just checking when GAE
>> > is running and doing some simplifications (scan jars directly on
>> > WEB-INF/lib and avoid Classpath.search() ). I think it is interesting
>> > to tune MyFaces core for GAE, so any suggestions and help is most
>> > welcome.
>> >
>> > regards,
>> >
>> > Leonardo Uribe
>> >
>> >    2012-05-23 01:45:16.994 /helloWorld.jsf 200 64ms 2kb Mozilla/5.0
>> > (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
>> >
>> >    2012-05-23 01:45:15.973 /helloWorld.jsf 200 85ms 1kb Mozilla/5.0
>> > (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
>> >
>> >    2012-05-23 01:45:13.298 /helloWorld.jsf 200 474ms 2kb Mozilla/5.0
>> > (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
>> >    I 2012-05-23 01:45:13.031
>> > org.apache.myfaces.util.ExternalSpecifications isUnifiedELAvailable:
>> > MyFaces Unified EL support disabled
>> >    I 2012-05-23 01:45:13.222 javax.servlet.ServletContext log: No
>> > state saving method defined, assuming default server state saving
>> >
>> >    2012-05-23 01:44:24.228 /home.jsf 200 7616ms 1kb Mozilla/5.0
>> > (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
>> >    I 2012-05-23 01:44:18.539
>> > org.apache.myfaces.webapp.Jsp20FacesInitializer
>> > initContainerIntegration: This application isn't running in a JSP 2.1
>> > container.
>> >    I 2012-05-23 01:44:18.540
>> > org.apache.myfaces.webapp.Jsp20FacesInitializer
>> > initContainerIntegration: Either you haven't specified the
>> > ExpressionFactory implementation, or an err
>> >    I 2012-05-23 01:44:18.940
>> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
>> > getStandardFacesConfig: Reading standard config
>> > META-INF/standard-faces-config.xml
>> >    I 2012-05-23 01:44:20.325
>> > org.apache.myfaces.config.DefaultFacesConfigurationProvider
>> > getWebAppFacesConfig: Reading config /WEB-INF/faces-config.xml
>> >    I 2012-05-23 01:44:20.737
>> > org.apache.myfaces.config.LogMetaInfUtils logArtifact: Artifact
>> > 'myfaces-bundle' was found in version '2.1.8-SNAPSHOT' from path
>> > 'file:/base/data/home
>> >    I 2012-05-23 01:44:20.930
>> > org.apache.myfaces.util.ExternalSpecifications
>> > isBeanValidationAvailable: MyFaces Bean Validation support disabled
>> >    I 2012-05-23 01:44:21.341
>> > org.apache.myfaces.application.ApplicationImpl getProjectStage:
>> > Couldn't discover the current project stage, using Production
>> >    I 2012-05-23 01:44:21.341
>> > org.apache.myfaces.config.FacesConfigurator handleSerialFactory:
>> > Serialization provider : class
>> > org.apache.myfaces.shared_impl.util.serial.DefaultSeri
>> >    I 2012-05-23 01:44:21.348
>> > org.apache.myfaces.config.annotation.DefaultLifecycleProviderFactory
>> > getLifecycleProvider: Using LifecycleProvider
>> > org.apache.myfaces.config.annotatio
>> >    I 2012-05-23 01:44:21.428
>> > org.apache.myfaces.webapp.AbstractFacesInitializer initFaces:
>> > ServletContext initialized.
>> >    I 2012-05-23 01:44:21.432
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > Tomahawk jar not available. Autoscrolling, DetectJavascript,
>> > AddResourceClass and
>> >    I 2012-05-23 01:44:21.432
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > Scanning for context init parameters not defined. It is not necessary
>> > to define t
>> >    I 2012-05-23 01:44:21.432
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.RESOURCE_EXCLUDES' found, using
>> > default va
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.STATE_SAVING_METHOD' found,
>> > using default
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FULL_STATE_SAVING_VIEW_IDS'
>> > found.
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.PARTIAL_STATE_SAVING' found,
>> > using default
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_SUFFIX' found, using
>> > default valu
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_VIEW_MAPPINGS' found.
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'javax.faces.HONOR_CURRENT_COMPONENT_ATTRIBUTES' found,
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.VALIDATE_EMPTY_FIELDS' found,
>> > using defaul
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.ENUM_CONVERTER_ALLOW_STRING_PASSTRO
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR'
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.CONFIG_FILES' found.
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.LIFECYCLE_ID' found.
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ERROR_HANDLER' found.
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CHECKED_VIEWID_CACHE_SIZE' found, u
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CHECKED_VIEWID_CACHE_ENABLED' found
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.PRETTY_HTML' found,
>> > using default v
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ALLOW_JAVASCRIPT' found,
>> > using defa
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.CONFIG_REFRESH_PERIOD'
>> > found, using
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.VIEWSTATE_JAVASCRIPT'
>> > found, using
>> >    I 2012-05-23 01:44:21.433
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.RENDER_VIEWSTATE_ID'
>> > found, using d
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.STRICT_XHTML_LINKS'
>> > found, using de
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RENDER_CLEAR_JAVASCRIPT_FOR_BUTTON'
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RENDER_HIDDEN_FIELDS_FOR_LINK_PARAM
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.SAVE_FORM_SUBMIT_LINK_IE' found, us
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.DELEGATE_FACES_SERVLET'
>> > found.
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS' fou
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS_PRES
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.VALIDATE_XML' found.
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.WRAP_SCRIPT_CONTENT_WITH_XML_COMMEN
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RENDER_FORM_SUBMIT_SCRIPT_INLINE' f
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.DEBUG_PHASE_LISTENER'
>> > found.
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.STRICT_JSF_2_REFRESH_TARGET_AJAX' f
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.STRICT_JSF_2_CC_EL_RESOLVER' found,
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.DEFAULT_RESPONSE_WRITER_CONTENT_TYP
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.VIEW_UNIQUE_IDS_CACHE_ENABLED' foun
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.COMPONENT_UNIQUE_IDS_CACHE_SIZE' fo
>> >    I 2012-05-23 01:44:21.434
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.SUPPORT_JSP_AND_FACES_EL' found, us
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.FLASH_SCOPE_DISABLED'
>> > found, using
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RESOURCE_MAX_TIME_EXPIRES' found, u
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RESOURCE_HANDLER_CACHE_SIZE' found,
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.RESOURCE_HANDLER_CACHE_ENABLED' fou
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.USE_ENCRYPTION' found,
>> > using defaul
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ALGORITHM' found, using
>> > default val
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.SECRET.CACHE' found.
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ALGORITHM.IV' found.
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ALGORITHM.PARAMETERS'
>> > found, using
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.SERIAL_FACTORY' found.
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.COMPRESS_STATE_IN_CLIENT' found, us
>> >    I 2012-05-23 01:44:21.435
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.MAC_ALGORITHM' found,
>> > using default
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.MAC_SECRET' found.
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.MAC_SECRET.CACHE' found.
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYST
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.PROJECT_STAGE' found, using
>> > default value
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.LAZY_LOAD_CONFIG_OBJECTS' found, us
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.STRICT_JSF_2_ALLOW_SLASH_LIBRARY_NA
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.VALIDATE' found, using
>> > default valu
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.annotation.SCAN_PACKAGES' found.
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.EL_RESOLVER_COMPARATOR'
>> > found.
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.EL_RESOLVER_PREDICATE'
>> > found.
>> >    I 2012-05-23 01:44:21.436
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CHECKED_VIEWID_CACHE_SIZE' found, u
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CHECKED_VIEWID_CACHE_ENABLED' found
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ERROR_TEMPLATE_RESOURCE'
>> > found, usi
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.DEBUG_TEMPLATE_RESOURCE'
>> > found, usi
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.ERROR_HANDLING' found,
>> > using defaul
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION' found,
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.NUMBER_OF_SEQUENTIAL_VIEWS_IN_SESSI
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.SERIALIZE_STATE_IN_SESSION' found,
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.COMPRESS_STATE_IN_SESSION' found, u
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CACHE_OLD_VIEWS_IN_SESSION_MODE' fo
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.USE_FLASH_SCOPE_PURGE_VIEWS_IN_SESS
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.HANDLE_STATE_CACHING_MECHANICS' fou
>> >    I 2012-05-23 01:44:21.437
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.USE_MULTIPLE_JS_FILES_FOR_JSF_UNCOM
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.JSF_JS_MODE' found,
>> > using default v
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.SERVICE_PROVIDER_FINDER'
>> > found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER' found, us
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.SAVE_STATE_WITH_VISIT_TREE_ON_PSS'
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.CHECK_ID_PRODUCTION_MODE' found, us
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_BUFFER_SIZE' found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.BUFFER_SIZE' found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_DECORATORS' found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.DECORATORS' found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_LIBRARIES' found.
>> >    I 2012-05-23 01:44:21.438
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.LIBRARIES' found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_REFRESH_PERIOD' found,
>> > using defa
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.REFRESH_PERIOD' found, using
>> > default value '-
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_RESOURCE_RESOLVER'
>> > found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.RESOURCE_RESOLVER' found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'javax.faces.FACELETS_SKIP_COMMENTS' found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'facelets.SKIP_COMMENTS' found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.MARK_INITIAL_STATE_WHEN_APPLY_BUILD
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.WRAP_TAG_EXCEPTIONS_AS_CONTEXT_AWAR
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.CACHE_EL_EXPRESSIONS'
>> > found, using
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.EXPRESSION_FACTORY'
>> > found.
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter
>> > 'org.apache.myfaces.INITIALIZE_ALWAYS_STANDALONE' found
>> >    I 2012-05-23 01:44:21.439
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.LOG_WEB_CONTEXT_PARAMS'
>> > found, usin
>> >    I 2012-05-23 01:44:21.440
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.FACES_INITIALIZER'
>> > found.
>> >    I 2012-05-23 01:44:21.440
>> > org.apache.myfaces.webapp.WebConfigParamsLogger logWebContextParams:
>> > No context init parameter 'org.apache.myfaces.FACES_INIT_PLUGINS'
>> > found.
>> >    I 2012-05-23 01:44:24.228 This request caused a new process to be
>> > started for your application, and thus caused your application code to
>> > be loaded for the first time. This requ
>> >
>> >
>> >
>> > 2012/5/23 lucio piccoli <lucio@asteriski.com>:
>> >> hi  Leonardo
>> >>
>> >> what startup time are u  guys gettting with the deploy myfaces on
>> appengine?
>> >>
>> >> -lp
>> >>
>> >> On 23 May 2012 15:12, Leonardo Uribe <lu4242@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 <lucio@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 <lu4242@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 <lucio@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 <vedmack@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 <
>> lucio@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
>>

Mime
View raw message