org.apache.tapestry.resolver
Class PageSpecificationResolver
java.lang.Object
org.apache.tapestry.resolver.AbstractSpecificationResolver
org.apache.tapestry.resolver.PageSpecificationResolver
- All Implemented Interfaces:
- IPoolable
public class PageSpecificationResolver
- extends AbstractSpecificationResolver
Performs the tricky work of resolving a page name to a page specification.
The search for pages in the application namespace is the most complicated,
since Tapestry searches for pages that aren't explicitly defined in the
application specification. The search, based on the simple-name
of the page, goes as follows:
- As declared in the application specification
- simple-name.page in the same folder as the application specification
- simple-name page in the WEB-INF/servlet-name directory of the context root
- simple-name.page in WEB-INF
- simple-name.page in the application root (within the context root)
- simple-name.html as a template in the application root,
for which an implicit specification is generated
- By searching the framework namespace
- By invoking
ISpecificationResolverDelegate.findPageSpecification(IRequestCycle, INamespace, String)
Pages in a component library are searched for in a more abbreviated fashion:
- Since:
- 3.0
- Version:
- $Id: PageSpecificationResolver.java 243791 2004-02-19 17:38:13Z hlship $
- Author:
- Howard Lewis Ship
- See Also:
IPageSource
Methods inherited from class org.apache.tapestry.resolver.AbstractSpecificationResolver |
discardFromPool, getApplicationRootLocation, getDelegate, getNamespace, getSpecification, getSpecificationSource, getWebInfAppLocation, getWebInfLocation, resetForPool, setNamespace, setSpecification |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PageSpecificationResolver
public PageSpecificationResolver(IRequestCycle cycle)
resolve
public void resolve(IRequestCycle cycle,
String prefixedName)
- Resolve the name (which may have a library id prefix) to a namespace
(see
AbstractSpecificationResolver.getNamespace()
) and a specification (see AbstractSpecificationResolver.getSpecification()
).
- Throws:
ApplicationRuntimeException
- if the name cannot be resolved
getSimplePageName
public String getSimplePageName()
reset
protected void reset()
- Description copied from class:
AbstractSpecificationResolver
- Clears the namespace, specification and simpleName properties.
- Overrides:
reset
in class AbstractSpecificationResolver