| <html t:type="Border" xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd"> |
| |
| <h1>Tapestry 5 Integration Application 1</h1> |
| |
| <t:remove> |
| Old style ad-hoc alerts, predating Tapestry 5.3: |
| </t:remove> |
| |
| <t:if test="alert"> |
| <p> |
| Alert: |
| <em id="alert">${alert}</em> |
| </p> |
| </t:if> |
| |
| <div> |
| <ul class="pagination"> |
| <t:loop source="alphaKeyItems.keySet()" value="key"> |
| <li> |
| <a href="#ix_${key}">${key}</a> |
| </li> |
| </t:loop> |
| </ul> |
| </div> |
| |
| <p><a href="#special">Special Pages</a></p> |
| |
| <t:loop source="alphaKeyItems.keySet()" value="key"> |
| <a name="ix_${key}"/> |
| |
| <h3>${key}</h3> |
| |
| <ul> |
| <li t:type="loop" source="itemsForKey()" value="item"> |
| <t:pagelink page="prop:item.pageName" context="item.context">${item.label}</t:pagelink> |
| -- ${item.description} |
| </li> |
| </ul> |
| |
| </t:loop> |
| |
| <h2 id="special">Special Pages</h2> |
| |
| <p>These are often pages which can't load due to errors.</p> |
| |
| <ul> |
| <li> |
| <a href="${injectDemoLink}">PageLink via Class Demo</a> |
| -- use ComponentResources to generate a link to a page using target |
| page class, not logical |
| page name |
| </li> |
| |
| <li> |
| <a href="BadTemplate">BadTemplate Page</a> |
| -- More exception reporting |
| </li> |
| <li> |
| <t:pagelink page="eventhandlerdemo" context="'clear'"> |
| EventHandler Demo |
| </t:pagelink> |
| -- Tests for event handling method order and matching |
| </li> |
| |
| <li> |
| <a href="InjectContainerMismatch"> |
| InjectContainerMismatch |
| </a> |
| -- check error reporting when @InjectContainer doesn't match |
| the actual field type |
| </li> |
| |
| <li> |
| <a href="injectcomponentmismatch">InjectComponentMismatch</a> |
| -- check error reporting when @InjectComponent |
| doesn't match actual field type |
| </li> |
| |
| <li> |
| <a href="recursivedemo">Recursive Demo</a> |
| -- check for handling of recursive components |
| </li> |
| |
| <li> |
| <t:actionlink t:id="securepage">Secure Page Demo</t:actionlink> |
| -- transition to HTTPS |
| </li> |
| |
| <li> |
| <t:pagelink page="listeventcontextdemo" context="demoContext">List Event Context Demo |
| </t:pagelink> |
| -- using a List for catch-all event context parameters |
| </li> |
| |
| <li> |
| <a href="datumeditor">Class Transformation Exception Demo</a> |
| -- demo proper reporting of exceptions during class transformation |
| </li> |
| |
| <li> |
| <t:actionlink t:id="instantiatePage">Instantiate Page</t:actionlink> |
| -- |
| attempt to instantiate (and return) a page instance |
| </li> |
| <li> |
| <a href="fieldannotationconflict">Field Annotation Conflict</a> |
| -- demo failure behavior when a field contains conflicting annotations |
| </li> |
| <li> |
| <a href="failedinjectdemo">Failed Field Injection Demo</a> |
| -- demo failure when attempting to inject into a field |
| </li> |
| <li> |
| <a href="pageAttachFailure">Page Attach Failure</a> |
| -- demo failure when attaching a page |
| </li> |
| |
| <li> |
| <a href="componentsNotInTemplateDemo">Components Not In Template Demo</a> |
| -- demo exception when a component is defined in the class but not present in the template |
| </li> |
| <li> |
| <a href="GetterMethodAlreadyExists">Getter Method Already Exists</a> |
| -- demo @Property attempting to overwrite an existing getter method |
| </li> |
| <li> |
| <a href="DuplicateIds">Duplicate IDs</a> |
| -- demo two components declared with the same ID |
| </li> |
| <li> |
| <a href="PublishDuplicateNameDemo">Duplicate Published Parameter Name</a> |
| -- demo error checking for the same parameter name published from two different |
| embedded |
| components |
| </li> |
| <li> |
| <a href="EmbeddedComponentTypeConflict">Embedded Component Type Conflict |
| </a> |
| -- error checking for conflict between @Component.type and t:type. |
| </li> |
| <li> |
| <a href="PublishUnknownParameterDemo">Publish Unknown Parameter Demo</a> |
| -- publishing a parameter which does not exist |
| </li> |
| <li> |
| <a href="BadMixinIdDemo">Bad Mixin Id Demo</a> |
| -- error reporting when a parameter specifies a mixin id that does not exist |
| </li> |
| <li> |
| <a href="DupeMixinDemo">Duplicate Mixin Demo</a> |
| -- error reporting for adding a duplicate mixin to a component |
| </li> |
| <li> |
| <a href="ZoneRefreshWithHandlerReturningVoid">Zone Refresh With Event Handler Returning Void</a> |
| -- refreshes zone with an event handler returning void |
| </li> |
| <li> |
| <a href="ZoneRefreshWithHandlerReturningZone">Zone Refresh With Event Handler Returning Zone</a> |
| -- refreshes zone with an event handler returning zone |
| </li> |
| <li> |
| <a href="ZoneRefreshWithContext">Zone Refresh With Context</a> |
| -- refreshes zone with a context |
| </li> |
| <li> |
| <a href="UnsupportedParameterBlockDemo">Unsupported Parameter Block Demo</a> |
| -- informal block parameter to a component that does not support informal parameters |
| </li> |
| <li> |
| <a href="InvalidTemplateExtend">Invalid Template Extend Demo</a> |
| -- template uses extend, but component doesn't have a super-class |
| </li> |
| |
| <li> |
| <a href="PageResetFailure">PageReset Annotation Failure</a> |
| -- error when @PageReset is on a method with parameters |
| </li> |
| |
| <li> |
| <a href="VoidMethodWithCached">@Cached on void method</a> |
| -- error when @Cached is used on a method that returns void |
| </li> |
| |
| <li> |
| <a href="ParamsMethodWithCached">@Cached on method with parameters</a> |
| -- error when @cached is used on a method that has parameters |
| </li> |
| <li> |
| <a href="InvalidComponentTypeDemo">Invalid Component Type</a> |
| -- unknown type of component in template |
| </li> |
| <li> |
| <a href="NoTypeProvidedDemo">No Component Type Provided</a> |
| -- |
| component type not defined. |
| </li> |
| <li> |
| <a href="music/details2">Missing page activation context</a> |
| </li> |
| <li> |
| <a href="lib/alpha/root">Alpha Library Root</a> -- demonstrates libraries contributed with a slash in the name |
| </li> |
| <li> |
| <a href="parameterconflictdemo">Parameter Conflict Demo</a> -- checks for subclass parameters conflicting with |
| base class parameters |
| </li> |
| <li> |
| <a href="missingembeddedcomponent">Missing Embedded Component</a> -- @InjectComponent for component not in |
| template |
| </li> |
| <li> |
| <t:actionlink t:id="immediateResponse">Immediate Response</t:actionlink> |
| -- Stream page content bypassing page activation |
| </li> |
| |
| </ul> |
| |
| </html> |
| |