Performance improvement: more efficient AnnotProxyFieldValueFactory cache -------------------------------------------------------------------------
Key: WICKET-2344 URL: https://issues.apache.org/jira/browse/WICKET-2344 Project: Wicket Issue Type: Improvement Components: wicket-spring Reporter: Arnout Engelen AnnotProxyFieldValueFactory holds a cache of proxies for singleton beans. The cache is checked like this: // only check the cache if the bean is a singleton if (locator.isSingletonBean() && cache.containsKey(locator)) { return cache.get(locator); } However, when the bean is referenced by type rather than by name (the default and common case), 'locator.isSingletonBean()' is a quite expensive operation, because it looks up the bean name by type (it indirectly calls BeanFactoryUtils.beanNamesForTypeIncludingAncestors()). I think the call to locator.isSingletonBean() should either be omitted entirely (the cache only contains singleton proxies anyway), or omitted when annot.name() is blank. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.