monitor.pageCreateBegin(pageName);
// Resolvers are not threadsafe, so we get one from
// the pool or create as needed.
PageSpecificationResolver pageSpecificationResolver =
getPageSpecificationResolver(cycle);
pageSpecificationResolver.resolve(cycle, pageName);
// Likewise PageLoader
PageLoader loader = getPageLoader(cycle);
try
{
result =
loader.loadPage(
pageSpecificationResolver.getSimplePageName(),
pageSpecificationResolver.getNamespace(),
cycle,
pageSpecificationResolver.getSpecification());
}
finally
{
discardPageLoader(loader);
discardPageSpecificationResolver(pageSpecificationResolver);