How about trying the el api published by Geronimo ? it caches the ExpressionFactory to avoid the search action by default.
2010/8/25 Martin Koci <[email protected]> > Hi, > > this problem is not in myfaces but affects performance especially in > render response phase: > > EL 2.2 introduces method invocation but if you try use it like > rendered="#{bean.getRendered(param)}" there is an unpleasant surprise: > both implementations of BeanELResolver (Glassfish, Tomcat) use this > construction during method invocation: > > ExpressionFactory exprFactory = ExpressionFactory.newInstance(); > > That newInstance() always involves FactoryFinder mechanism, callstack > then looks like : > > org.apache.catalina.loader.WebappClassLoader.findResourceInternal > org.apache.catalina.loader.WebappClassLoader.findResource > org.apache.catalina.loader.WebappClassLoader.getResourceAsStream > javax.el.FactoryFinder.find(String, String, Properties) > javax.el.ExpressionFactory.newInstance(Properties) > javax.el.ExpressionFactory.newInstance() > javax.el.BeanELResolver.invokeMethod(Method, Object, Object[]) > > > Always tries to locale factory implementation, that > means /META-INF/services reading! This is not problem in myfaces, but > users don't distinguish between JSF and EL well. > > Any ideas? > > Regards, > > Martin Kočí > > > https://uel.dev.java.net/svn/uel/trunk/api/src/main/java/javax/el/BeanELResolver.java > http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/BeanELResolver.java > > > > -- Ivan
