Author: buildbot Date: Mon Feb 15 23:19:51 2016 New Revision: 980518 Log: Production update by buildbot for tapestry
Added: websites/production/tapestry/content/google-app-engine.html Modified: websites/production/tapestry/content/cache/main.pageCache websites/production/tapestry/content/cookbook.html websites/production/tapestry/content/documentation.html Modified: websites/production/tapestry/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/tapestry/content/cookbook.html ============================================================================== --- websites/production/tapestry/content/cookbook.html (original) +++ websites/production/tapestry/content/cookbook.html Mon Feb 15 23:19:51 2016 @@ -59,7 +59,7 @@ </div> <div id="content"> - <div id="ConfluenceContent"><p>This is the <strong>Tapestry Cookbook</strong>, a collection of mini-tutorials for commonly occurring patterns in Tapestry.</p><h1 id="Cookbook-Contents">Contents</h1><p></p><ul class="childpages-macro"><li><a href="default-parameter.html">Default Parameter</a> — <span class="smalltext">Avoiding repetition when using component parameters by adding autoconnect=true</span></li><li><a href="overriding-exception-reporting.html">Overriding Exception Reporting</a> — <span class="smalltext">Customizing Tapestry's default exception reporting page</span></li><li><a href="error-page-recipe.html">Error Page Recipe</a> — <span class="smalltext">Serving up a Tapestry page as your site's custom 404 response page</span></li><li><a href="supporting-informal-parameters.html">Supporting Informal Parameters</a> — <span class="smalltext">How to make your custom component accept and pass on all unknown parameters to the underlyin g HTML element</span></li><li><a href="component-libraries.html">Component Libraries</a> — <span class="smalltext">How to create a library of your custom components</span></li><li><a href="switching-cases.html">Switching Cases</a> — <span class="smalltext">Performing the equivalent of a "switch" statement in your component template using blocks and a delegate</span></li><li><a href="enum-parameter-recipe.html">Enum Parameter Recipe</a> — <span class="smalltext">Using an Enum as a component parameter using coercion</span></li><li><a href="extending-the-if-component.html">Extending the If Component</a> — <span class="smalltext">Adding a type coercion to enable the If component to test for anything</span></li><li><a href="meta-programming-page-content.html">Meta-Programming Page Content</a> — <span class="smalltext">Adding an Annotation and a Filter to customize Tapestry's page rendering</span></li><li><a href="using-select-with-a-list.html">Using Se lect With a List</a> — <span class="smalltext">Using SelectModel, SelectModelFactory and ValueEncoder for Select menus populated from a database</span></li><li><a href="ioc-cookbook.html">IoC cookbook</a> — <span class="smalltext">A tutorial for using Tapestry's Inversion of Control container</span><ul class="childpages-macro"><li><a href="ioc-cookbook-basic-services-and-injection.html">IoC Cookbook - Basic Services and Injection</a></li><li><a href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook - Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC cookbook - Service Configurations</a></li></ul></li><li><a href="performance-and-clustering.html">Performance and Clustering</a></li></ul><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p></div> + <div id="ConfluenceContent"><p>This is the <strong>Tapestry Cookbook</strong>, a collection of mini-tutorials for commonly occurring patterns in Tapestry.</p><h1 id="Cookbook-Contents">Contents</h1><p></p><ul class="childpages-macro"><li><a href="default-parameter.html">Default Parameter</a> — <span class="smalltext">Avoiding repetition when using component parameters by adding autoconnect=true</span></li><li><a href="overriding-exception-reporting.html">Overriding Exception Reporting</a> — <span class="smalltext">Customizing Tapestry's default exception reporting page</span></li><li><a href="error-page-recipe.html">Error Page Recipe</a> — <span class="smalltext">Serving up a Tapestry page as your site's custom 404 response page</span></li><li><a href="supporting-informal-parameters.html">Supporting Informal Parameters</a> — <span class="smalltext">How to make your custom component accept and pass on all unknown parameters to the underlyin g HTML element</span></li><li><a href="component-libraries.html">Component Libraries</a> — <span class="smalltext">How to create a library of your custom components</span></li><li><a href="switching-cases.html">Switching Cases</a> — <span class="smalltext">Performing the equivalent of a "switch" statement in your component template using blocks and a delegate</span></li><li><a href="enum-parameter-recipe.html">Enum Parameter Recipe</a> — <span class="smalltext">Using an Enum as a component parameter using coercion</span></li><li><a href="extending-the-if-component.html">Extending the If Component</a> — <span class="smalltext">Adding a type coercion to enable the If component to test for anything</span></li><li><a href="meta-programming-page-content.html">Meta-Programming Page Content</a> — <span class="smalltext">Adding an Annotation and a Filter to customize Tapestry's page rendering</span></li><li><a href="using-select-with-a-list.html">Using Se lect With a List</a> — <span class="smalltext">Using SelectModel, SelectModelFactory and ValueEncoder for Select menus populated from a database</span></li><li><a href="ioc-cookbook.html">IoC cookbook</a> — <span class="smalltext">A tutorial for using Tapestry's Inversion of Control container</span><ul class="childpages-macro"><li><a href="ioc-cookbook-basic-services-and-injection.html">IoC Cookbook - Basic Services and Injection</a></li><li><a href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook - Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC cookbook - Service Configurations</a></li></ul></li><li><a href="performance-and-clustering.html">Performance and Clustering</a></li><li><a href="google-app-engine.html">Google App Engine</a></li></ul><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p>  </p></div> </div> <div class="clearer"></div> Modified: websites/production/tapestry/content/documentation.html ============================================================================== --- websites/production/tapestry/content/documentation.html (original) +++ websites/production/tapestry/content/documentation.html Mon Feb 15 23:19:51 2016 @@ -59,7 +59,7 @@ </div> <div id="content"> - <div id="ConfluenceContent"><div style="float:right;margin-left:1em"><h2 id="Documentation-AllTopics">All Topics</h2><ul class="childpages-macro"><li><a href="introduction.html">Introduction</a></li><li><a href="getting-started.html">Getting Started</a></li><li><a href="principles.html">Principles</a></li><li><a href="tapestry-tutorial.html">Tapestry Tutorial</a><ul class="childpages-macro"><li><a href="dependencies-tools-and-plugins.html">Dependencies, Tools and Plugins</a></li><li><a href="creating-the-skeleton-application.html">Creating The Skeleton Application</a></li><li><a href="exploring-the-project.html">Exploring the Project</a></li><li><a href="implementing-the-hi-lo-guessing-game.html">Implementing the Hi-Lo Guessing Game</a></li><li><a href="using-beaneditform-to-create-user-forms.html">Using BeanEditForm To Create User Forms</a></li><li><a href="using-tapestry-with-hibernate.html">Using Tapestry With Hibernate</a></li></ul></li><li><a href="us er-guide.html">User Guide</a><ul class="childpages-macro"><li><a href="project-layout.html">Project Layout</a></li><li><a href="configuration.html">Configuration</a></li><li><a href="runtime-exceptions.html">Runtime Exceptions</a></li><li><a href="class-reloading.html">Class Reloading</a></li><li><a href="component-reference.html">Component Reference</a></li><li><a href="annotations.html">Annotations</a></li><li><a href="component-classes.html">Component Classes</a></li><li><a href="component-templates.html">Component Templates</a></li><li><a href="property-expressions.html">Property Expressions</a></li><li><a href="component-parameters.html">Component Parameters</a></li><li><a href="parameter-type-coercion.html">Parameter Type Coercion</a></li><li><a href="layout-component.html">Layout Component</a></li><li><a href="component-mixins.html">Component Mixins</a><ul class="childpages-macro"><li><a href="built-in-mixins.html">Built-in Mixins</a></li></ul></li><li><a href= "page-navigation.html">Page Navigation</a></li><li><a href="localization.html">Localization</a></li><li><a href="page-life-cycle.html">Page Life Cycle</a></li><li><a href="request-processing.html">Request Processing</a></li><li><a href="component-rendering.html">Component Rendering</a></li><li><a href="component-events.html">Component Events</a></li><li><a href="url-rewriting.html">URL rewriting</a></li><li><a href="dom.html">DOM</a></li><li><a href="response-compression.html">Response Compression</a></li><li><a href="security.html">Security</a></li><li><a href="https.html">HTTPS</a></li><li><a href="content-type-and-markup.html">Content Type and Markup</a></li><li><a href="persistent-page-data.html">Persistent Page Data</a></li><li><a href="session-storage.html">Session Storage</a><ul class="childpages-macro"><li><a href="clustering-issues.html">Clustering Issues</a></li></ul></li><li><a href="injection.html">Injection</a></li><li><a href="environmental-services.htm l">Environmental Services</a></li><li><a href="css.html">CSS</a></li><li><a href="assets.html">Assets</a></li><li><a href="forms-and-validation.html">Forms and Validation</a></li><li><a href="beaneditform-guide.html">BeanEditForm Guide</a></li><li><a href="uploading-files.html">Uploading Files</a></li><li><a href="logging.html">Logging</a></li><li><a href="unit-testing-pages-or-components.html">Unit testing pages or components</a></li><li><a href="integration-testing.html">Integration Testing</a></li><li><a href="development-dashboard.html">Development Dashboard</a></li><li><a href="modules.html">Modules</a><ul class="childpages-macro"><li><a href="built-in-modules.html">Built In Modules</a></li><li><a href="third-party-modules.html">Third Party Modules</a></li></ul></li><li><a href="ioc.html">IOC</a><ul class="childpages-macro"><li><a href="tapestry-ioc-overview.html">Tapestry IoC Overview</a></li><li><a href="tapestry-ioc-modules.html">Tapestry IoC Modules</a></li>< li><a href="defining-tapestry-ioc-services.html">Defining Tapestry IOC Services</a></li><li><a href="service-advisors.html">Service Advisors</a></li><li><a href="tapestry-ioc-decorators.html">Tapestry IoC Decorators</a></li><li><a href="tapestry-ioc-configuration.html">Tapestry IoC Configuration</a></li><li><a href="case-insensitivity.html">Case Insensitivity</a></li><li><a href="autoloading-modules.html">Autoloading Modules</a></li><li><a href="service-implementation-reloading.html">Service Implementation Reloading</a></li><li><a href="ordering-by-constraints.html">Ordering by Constraints</a></li><li><a href="symbols.html">Symbols</a></li><li><a href="chainbuilder-service.html">ChainBuilder Service</a></li><li><a href="pipelinebuilder-service.html">PipelineBuilder Service</a></li><li><a href="shadowbuilder-service.html">ShadowBuilder Service</a></li><li><a href="strategybuilder-service.html">StrategyBuilder Service</a></li><li><a href="injection-in-detail.html">Inject ion in Detail</a></li><li><a href="object-providers.html">Object Providers</a></li><li><a href="service-serialization.html">Service Serialization</a></li><li><a href="type-coercion.html">Type Coercion</a></li><li><a href="starting-the-ioc-registry.html">Starting the IoC Registry</a></li><li><a href="registry-startup.html">Registry Startup</a></li><li><a href="parallel-execution.html">Parallel Execution</a></li><li><a href="logging-in-tapestry.html">Logging in Tapestry</a></li><li><a href="using-jsr-330-standard-annotations.html">Using JSR 330 standard annotations</a></li><li><a href="operation-tracker.html">Operation Tracker</a></li></ul></li><li><a href="hibernate-core.html">Hibernate - Core</a><ul class="childpages-macro"><li><a href="hibernate-core-conf.html">Hibernate - Core - Conf</a></li><li><a href="hibernate.html">Hibernate</a></li></ul></li><li><a href="integrating-with-spring-framework.html">Integrating with Spring Framework</a></li><li><a href="bean-validati on.html">Bean Validation</a></li><li><a href="component-report.html">Component Report</a></li><li><a href="aliases.html">Aliases</a></li><li><a href="integrating-with-jpa.html">Integrating with JPA</a></li><li><a href="client-side-javascript.html">Client-Side JavaScript</a><ul class="childpages-macro"><li><a href="javascript-modules.html">JavaScript Modules</a></li><li><a href="coffeescript.html">CoffeeScript</a></li><li><a href="legacy-javascript.html">Legacy JavaScript</a></li><li><a href="ajax-and-zones.html">Ajax and Zones</a></li></ul></li></ul></li><li><a href="cheat-sheets.html">Cheat Sheets</a><ul class="childpages-macro"><li><a href="application-module-class-cheat-sheet.html">Application Module Class Cheat Sheet</a></li><li><a href="component-cheat-sheet.html">Component Cheat Sheet</a></li><li><a href="tapestry-for-jsf-users.html">Tapestry for JSF Users</a></li></ul></li><li><a href="cookbook.html">Cookbook</a><ul class="childpages-macro"><li><a href="default- parameter.html">Default Parameter</a></li><li><a href="overriding-exception-reporting.html">Overriding Exception Reporting</a></li><li><a href="error-page-recipe.html">Error Page Recipe</a></li><li><a href="supporting-informal-parameters.html">Supporting Informal Parameters</a></li><li><a href="component-libraries.html">Component Libraries</a></li><li><a href="switching-cases.html">Switching Cases</a></li><li><a href="enum-parameter-recipe.html">Enum Parameter Recipe</a></li><li><a href="extending-the-if-component.html">Extending the If Component</a></li><li><a href="meta-programming-page-content.html">Meta-Programming Page Content</a></li><li><a href="using-select-with-a-list.html">Using Select With a List</a></li><li><a href="ioc-cookbook.html">IoC cookbook</a><ul class="childpages-macro"><li><a href="ioc-cookbook-basic-services-and-injection.html">IoC Cookbook - Basic Services and Injection</a></li><li><a href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook - Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC cookbook - Service Configurations</a></li></ul></li><li><a href="performance-and-clustering.html">Performance and Clustering</a></li></ul></li><li><a href="frequently-asked-questions.html">Frequently Asked Questions</a><ul class="childpages-macro"><li><a href="general-questions.html">General Questions</a></li><li><a href="templating-and-markup-faq.html">Templating and Markup FAQ</a></li><li><a href="page-and-component-classes-faq.html">Page And Component Classes FAQ</a></li><li><a href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></li><li><a href="beaneditform-faq.html">BeanEditForm FAQ</a></li><li><a href="link-components-faq.html">Link Components FAQ</a></li><li><a href="component-events-faq.html">Component Events FAQ</a></li><li><a href="javascript-faq.html">JavaScript FAQ</a></li> <li><a href="ajax-components-faq.html">Ajax Components FAQ</a></li><li><a href="injection-faq.html">Injection FAQ</a></li><li><a href="tapestry-inversion-of-control-faq.html">Tapestry Inversion of Control FAQ</a></li><li><a href="security-faq.html">Security FAQ</a></li><li><a href="integration-with-existing-applications.html">Integration with existing applications</a></li><li><a href="request-processing-faq.html">Request Processing FAQ</a></li><li><a href="limitations.html">Limitations</a></li><li><a href="specific-errors-faq.html">Specific Errors FAQ</a></li><li><a href="hibernate-support-faq.html">Hibernate Support FAQ</a></li><li><a href="maven-support-faq.html">Maven Support FAQ</a></li><li><a href="release-upgrade-faq.html">Release Upgrade FAQ</a></li></ul></li><li><a href="release-notes.html">Release Notes</a><ul class="childpages-macro"><li><a href="how-to-upgrade.html">How to Upgrade</a></li><li><a href="release-notes-50.html">Release Notes 5.0</a></li><li><a href="release-notes-51.html">Release Notes 5.1</a></li><li><a href="release-notes-52.html">Release Notes 5.2</a><ul class="childpages-macro"><li><a href="release-notes-520.html">Release Notes 5.2.0</a></li><li><a href="release-notes-521.html">Release Notes 5.2.1</a></li><li><a href="release-notes-522.html">Release Notes 5.2.2</a></li><li><a href="release-notes-523.html">Release Notes 5.2.3</a></li><li><a href="release-notes-524.html">Release Notes 5.2.4</a></li><li><a href="release-notes-525.html">Release Notes 5.2.5</a></li><li><a href="release-notes-526.html">Release Notes 5.2.6</a></li></ul></li><li><a href="release-notes-53.html">Release Notes 5.3</a></li><li><a href="release-notes-531.html">Release Notes 5.3.1</a></li><li><a href="release-notes-532.html">Release Notes 5.3.2</a></li><li><a href="release-notes-533.html">Release Notes 5.3.3</a></li><li><a href="release-notes-534.html">Release Notes 5.3.4</a></li><li><a href="release-notes-535.html">Release Notes 5.3. 5</a></li><li><a href="release-notes-536.html">Release Notes 5.3.6</a></li><li><a href="release-notes-537.html">Release Notes 5.3.7</a></li><li><a href="release-notes-54.html">Release Notes 5.4</a></li><li><a href="release-notes-538.html">Release Notes 5.3.8</a></li></ul></li><li><a href="javascript-rewrite-in-54.html">JavaScript Rewrite in 5.4</a></li><li><a href="support.html">Support</a></li><li><a href="developer-information.html">Developer Information</a><ul class="childpages-macro"><li><a href="building-tapestry-from-source.html">Building Tapestry from Source</a></li><li><a href="confluence-site-setup.html">Confluence Site Setup</a><ul class="childpages-macro"><li><a href="since-and-deprecated-user-macros.html">Since and Deprecated User Macros</a></li></ul></li><li><a href="developer-bible.html">Developer Bible</a></li><li><a href="release-process.html">Release Process</a></li><li><a href="the-tapestry-jail.html">The tapestry jail</a></li><li><a href="version-num bers.html">Version Numbers</a></li></ul></li></ul></div><p>Welcome to the Tapestry 5 Documentation. A rich collection of guides is available to teach beginners the basics and help even experienced developers deepen their understanding of Tapestry's power. <em>Code less, deliver more!</em></p><h1 id="Documentation-Highlights">Highlights</h1><p>These are the most useful starting points for common needs.</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="introduction.html">Introduction</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An overview of Tapestry's general approach and philosophy</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="getting-started.html">Getting Started</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick guide to creating your first Tapestry project, using Maven</p></td></tr><tr><td colspan="1" rowspan="1" class="conflue nceTd"><p><a href="tapestry-tutorial.html">Tapestry Tutorial</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Picks up where <em>Getting Started</em> leaves off, explaining in greater detail how Tapestry works</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="user-guide.html">User Guide</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Detailed articles on every Tapestry feature</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="community.html">Community</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Getting support, mailing lists, JIRA, outside resources, and access to the source</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="cookbook.html">Cookbook</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Guides to doing common things with Tapestry</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><strong><a href="frequen tly-asked-questions.html">FAQ</a></strong></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick place to check for common problems and solutions</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="component-cheat-sheet.html">Component Cheat Sheet</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A concise guide to component classes, methods and annotations</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link" href="http://refcardz.dzone.com/refcardz/apache-tapestry-50?oid=hom7948" rel="nofollow">Refcard</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A color, six page foldout guide to Tapestry 5.0 (PDF)</p></td></tr></tbody></table></div><h1 id="Documentation-APIandComponentReference">API and Component Reference</h1><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>API (Javadoc):</p></th><td colspan="1" r owspan="1" class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link" href="http://tapestry.apache.org/5.3.7/apidocs/">5.3.8</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://tapestry.apache.org/current">5.4</a></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Component Reference:</p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><em><span class="confluence-link">(same as current)</span></em></p></td><td colspan="1" rowspan="1" class="confluenceTd"><a href="component-r eference.html">5.4 (current)</a></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Release Notes:</p></th><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-50.html">5.0</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-51.html">5.1</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-52.html">5.2</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-538.html">5.3.8</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><a href="release-notes-54.html">5.4</a></td></tr></tbody></table></div><p><sup>1</sup> needs to be built manually from archived sources at <a class="external-link" href="http://archive.apache.org/dist/tapestry/">http://archive.apache.org/dist/tapestry/</a>.</p><h1 id="Documentation-UserGuide">User Guide</h1><p><span class="confluence-anchor-link" id="Documentation-userguide"></span>The <a href="user-guide.html">Us er Guide</a> consists of over 75 pages of detailed information on the concepts behind Tapestry and instructions on how to use this powerful tool. Highlights include:</p><ul><li><a href="legacy-javascript.html">Legacy JavaScript</a> and <a href="ajax-and-zones.html">Ajax and Zones</a> describe Tapestry's built-in support for dynamic in-page behavior.</li><li><a href="integrating-with-spring-framework.html">Integrating with Spring Framework</a> describes how to integrate Spring into your Tapestry application.</li><li><a href="hibernate.html">Tapestry/Hibernate Integration Library</a> provides out-of-the-box support for using Hibernate 3.</li><li><a href="bean-validation.html">JSR 303: Bean Validation</a> shows how to use standard annotations for validation</li><li><a href="integration-testing.html">Integration Testing</a> shows how to test your application with Selenium.</li></ul><p><a href="user-guide.html">More topics</a>...</p><h1 id="Documentation-BlogsbyTapestryDevelopersa ndtheCommunity">Blogs by Tapestry Developers and the Community</h1><ul><li><a class="external-link" href="http://tapestryjava.blogspot.com/" rel="nofollow">Tapestry Central</a> is Howard Lewis Ship's blog. As the creator of Tapestry, he provides valuable insights into Tapestry's latest features and future directions.</li><li><a class="external-link" href="http://blog.tapestry5.de/" rel="nofollow">Igor Drobiazko's blog</a> (committer & PMC) contains news on Tapestry development and will guide you through some of the most exciting parts of Tapestry.</li><li><a class="external-link" href="http://tawus.wordpress.com/" rel="nofollow">Java Magic</a> (by Taha Hafeez, committer) has a series of tutorials illustrating some of the more advanced Tapestry and Plastic features and techniques.</li><li><a class="external-link" href="http://blog.andyhot.gr/tag/tapestry/" rel="nofollow">Andreas Andreou's blog</a> (committer & PMC) has news and commentary on Tapestry.</li><li><a class="e xternal-link" href="http://spreadthesource.com/" rel="nofollow">Spread the Source blog</a> (Christophe Cordenier and Robin Komiwes) has news and advanced tutorials on Tapestry 5.</li></ul><h1 id="Documentation-BooksonTapestry">Books on Tapestry</h1><p>There are at least 9 published <a href="books.html">books on Tapestry</a>, including three on Tapestry 5 — and more on the way.</p><h1 id="Documentation-ArticlesonTapestry">Articles on Tapestry</h1><ul><li>This <a class="external-link" href="http://www.laliluna.de/articles/the-web-framework-evaluation.html" rel="nofollow">eBook</a> published in 2009 contains a <a class="external-link" href="http://www.laliluna.de/articles/2009/08/14/tapestry-web-framework-evaluation-and-test.html" rel="nofollow">good introduction and analysis of Tapestry 5</a></li></ul><ul><li><a class="external-link" href="http://www.infoq.com/articles/tapestry5-intro" rel="nofollow">Tapestry 5 for Nonbelievers</a> will convince the skeptical why Tapestry is the best web framework.</li></ul><p><a href="articles.html">More articles</a>...</p><h1 id="Documentation-TapestryPresentations">Tapestry Presentations</h1><ul><li>Mark W. Shead's <a class="external-link" href="http://blog.markwshead.com/900/tapestry-5-10-minute-demo/" rel="nofollow">10 Minute Demo</a></li><li>H. L. Ship's <a class="external-link" href="https://www.youtube.com/watch?v=5BGt7eMFC20" rel="nofollow">Tapestry 5.4 - Bootstrap-enhanced Exception Reporting</a></li><li><a class="external-link" href="http://jazoon.com/Portals/0/Content/slides/th_a7_1130-1220_drobiazko.pdf" rel="nofollow">JavaServer Faces 2.0 vs. Tapestry 5</a> (PDF) A Head-to-Head Comparison by Igor Drobiazko at Jazoon 2010</li><li><a class="external-link" href="http://www.parleys.com/#st=5&sl=5&id=1700" rel="nofollow">Tapestry 5: Java power, Scripting Ease</a> (VIDEO) by Howard Lewis Ship at Devoxx 2009</li></ul><p><a href="presentations.html">More presentations</a> ...</p><h1 id="Documentatio n-TapestryWikis">Tapestry Wikis</h1><ul><li><a class="external-link" href="http://wiki.apache.org/tapestry/FrontPage">Tapestry Community Wiki</a> (Moin Moin) contains a lot of user-generated information on different Tapestry use cases.</li><li><a href="https://cwiki.apache.org/confluence/x/VCFkAQ">Documentation Source wiki</a> (Confluence) – the wiki used as the content editor for the official Tapestry documentation</li></ul><h1 id="Documentation-Gettinghelp">Getting help</h1><p>The primary method of support is the <a href="mailing-lists.html">Tapestry Mailing Lists</a>.</p><p>In addition, there are occasionally questions and answers about Tapestry at <a class="external-link" href="http://stackoverflow.com/questions/tagged/tapestry" rel="nofollow">Stack Overflow</a>.</p><h1 id="Documentation-TheDeveloperCorner">The Developer Corner</h1><p><a href="developer-information.html">Developer Information</a> gives information needed by the Tapestry developers</p><p> </p></di v> + <div id="ConfluenceContent"><div style="float:right;margin-left:1em"><h2 id="Documentation-AllTopics">All Topics</h2><ul class="childpages-macro"><li><a href="introduction.html">Introduction</a></li><li><a href="getting-started.html">Getting Started</a></li><li><a href="principles.html">Principles</a></li><li><a href="tapestry-tutorial.html">Tapestry Tutorial</a><ul class="childpages-macro"><li><a href="dependencies-tools-and-plugins.html">Dependencies, Tools and Plugins</a></li><li><a href="creating-the-skeleton-application.html">Creating The Skeleton Application</a></li><li><a href="exploring-the-project.html">Exploring the Project</a></li><li><a href="implementing-the-hi-lo-guessing-game.html">Implementing the Hi-Lo Guessing Game</a></li><li><a href="using-beaneditform-to-create-user-forms.html">Using BeanEditForm To Create User Forms</a></li><li><a href="using-tapestry-with-hibernate.html">Using Tapestry With Hibernate</a></li></ul></li><li><a href="us er-guide.html">User Guide</a><ul class="childpages-macro"><li><a href="project-layout.html">Project Layout</a></li><li><a href="configuration.html">Configuration</a></li><li><a href="runtime-exceptions.html">Runtime Exceptions</a></li><li><a href="class-reloading.html">Class Reloading</a></li><li><a href="component-reference.html">Component Reference</a></li><li><a href="annotations.html">Annotations</a></li><li><a href="component-classes.html">Component Classes</a></li><li><a href="component-templates.html">Component Templates</a></li><li><a href="property-expressions.html">Property Expressions</a></li><li><a href="component-parameters.html">Component Parameters</a></li><li><a href="parameter-type-coercion.html">Parameter Type Coercion</a></li><li><a href="layout-component.html">Layout Component</a></li><li><a href="component-mixins.html">Component Mixins</a><ul class="childpages-macro"><li><a href="built-in-mixins.html">Built-in Mixins</a></li></ul></li><li><a href= "page-navigation.html">Page Navigation</a></li><li><a href="localization.html">Localization</a></li><li><a href="page-life-cycle.html">Page Life Cycle</a></li><li><a href="request-processing.html">Request Processing</a></li><li><a href="component-rendering.html">Component Rendering</a></li><li><a href="component-events.html">Component Events</a></li><li><a href="url-rewriting.html">URL rewriting</a></li><li><a href="dom.html">DOM</a></li><li><a href="response-compression.html">Response Compression</a></li><li><a href="security.html">Security</a></li><li><a href="https.html">HTTPS</a></li><li><a href="content-type-and-markup.html">Content Type and Markup</a></li><li><a href="persistent-page-data.html">Persistent Page Data</a></li><li><a href="session-storage.html">Session Storage</a><ul class="childpages-macro"><li><a href="clustering-issues.html">Clustering Issues</a></li></ul></li><li><a href="injection.html">Injection</a></li><li><a href="environmental-services.htm l">Environmental Services</a></li><li><a href="css.html">CSS</a></li><li><a href="assets.html">Assets</a></li><li><a href="forms-and-validation.html">Forms and Validation</a></li><li><a href="beaneditform-guide.html">BeanEditForm Guide</a></li><li><a href="uploading-files.html">Uploading Files</a></li><li><a href="logging.html">Logging</a></li><li><a href="unit-testing-pages-or-components.html">Unit testing pages or components</a></li><li><a href="integration-testing.html">Integration Testing</a></li><li><a href="development-dashboard.html">Development Dashboard</a></li><li><a href="modules.html">Modules</a><ul class="childpages-macro"><li><a href="built-in-modules.html">Built In Modules</a></li><li><a href="third-party-modules.html">Third Party Modules</a></li></ul></li><li><a href="ioc.html">IOC</a><ul class="childpages-macro"><li><a href="tapestry-ioc-overview.html">Tapestry IoC Overview</a></li><li><a href="tapestry-ioc-modules.html">Tapestry IoC Modules</a></li>< li><a href="defining-tapestry-ioc-services.html">Defining Tapestry IOC Services</a></li><li><a href="service-advisors.html">Service Advisors</a></li><li><a href="tapestry-ioc-decorators.html">Tapestry IoC Decorators</a></li><li><a href="tapestry-ioc-configuration.html">Tapestry IoC Configuration</a></li><li><a href="case-insensitivity.html">Case Insensitivity</a></li><li><a href="autoloading-modules.html">Autoloading Modules</a></li><li><a href="service-implementation-reloading.html">Service Implementation Reloading</a></li><li><a href="ordering-by-constraints.html">Ordering by Constraints</a></li><li><a href="symbols.html">Symbols</a></li><li><a href="chainbuilder-service.html">ChainBuilder Service</a></li><li><a href="pipelinebuilder-service.html">PipelineBuilder Service</a></li><li><a href="shadowbuilder-service.html">ShadowBuilder Service</a></li><li><a href="strategybuilder-service.html">StrategyBuilder Service</a></li><li><a href="injection-in-detail.html">Inject ion in Detail</a></li><li><a href="object-providers.html">Object Providers</a></li><li><a href="service-serialization.html">Service Serialization</a></li><li><a href="type-coercion.html">Type Coercion</a></li><li><a href="starting-the-ioc-registry.html">Starting the IoC Registry</a></li><li><a href="registry-startup.html">Registry Startup</a></li><li><a href="parallel-execution.html">Parallel Execution</a></li><li><a href="logging-in-tapestry.html">Logging in Tapestry</a></li><li><a href="using-jsr-330-standard-annotations.html">Using JSR 330 standard annotations</a></li><li><a href="operation-tracker.html">Operation Tracker</a></li></ul></li><li><a href="hibernate-core.html">Hibernate - Core</a><ul class="childpages-macro"><li><a href="hibernate-core-conf.html">Hibernate - Core - Conf</a></li><li><a href="hibernate.html">Hibernate</a></li></ul></li><li><a href="integrating-with-spring-framework.html">Integrating with Spring Framework</a></li><li><a href="bean-validati on.html">Bean Validation</a></li><li><a href="component-report.html">Component Report</a></li><li><a href="aliases.html">Aliases</a></li><li><a href="integrating-with-jpa.html">Integrating with JPA</a></li><li><a href="client-side-javascript.html">Client-Side JavaScript</a><ul class="childpages-macro"><li><a href="javascript-modules.html">JavaScript Modules</a></li><li><a href="coffeescript.html">CoffeeScript</a></li><li><a href="legacy-javascript.html">Legacy JavaScript</a></li><li><a href="ajax-and-zones.html">Ajax and Zones</a></li></ul></li></ul></li><li><a href="cheat-sheets.html">Cheat Sheets</a><ul class="childpages-macro"><li><a href="application-module-class-cheat-sheet.html">Application Module Class Cheat Sheet</a></li><li><a href="component-cheat-sheet.html">Component Cheat Sheet</a></li><li><a href="tapestry-for-jsf-users.html">Tapestry for JSF Users</a></li></ul></li><li><a href="cookbook.html">Cookbook</a><ul class="childpages-macro"><li><a href="default- parameter.html">Default Parameter</a></li><li><a href="overriding-exception-reporting.html">Overriding Exception Reporting</a></li><li><a href="error-page-recipe.html">Error Page Recipe</a></li><li><a href="supporting-informal-parameters.html">Supporting Informal Parameters</a></li><li><a href="component-libraries.html">Component Libraries</a></li><li><a href="switching-cases.html">Switching Cases</a></li><li><a href="enum-parameter-recipe.html">Enum Parameter Recipe</a></li><li><a href="extending-the-if-component.html">Extending the If Component</a></li><li><a href="meta-programming-page-content.html">Meta-Programming Page Content</a></li><li><a href="using-select-with-a-list.html">Using Select With a List</a></li><li><a href="ioc-cookbook.html">IoC cookbook</a><ul class="childpages-macro"><li><a href="ioc-cookbook-basic-services-and-injection.html">IoC Cookbook - Basic Services and Injection</a></li><li><a href="ioc-cookbook-overriding-ioc-services.html">IoC Cookbook - Overriding IoC Services</a></li><li><a href="ioc-cookbook-patterns.html">IoC Cookbook - Patterns</a></li><li><a href="ioc-cookbook-service-configurations.html">IoC cookbook - Service Configurations</a></li></ul></li><li><a href="performance-and-clustering.html">Performance and Clustering</a></li><li><a href="google-app-engine.html">Google App Engine</a></li></ul></li><li><a href="frequently-asked-questions.html">Frequently Asked Questions</a><ul class="childpages-macro"><li><a href="general-questions.html">General Questions</a></li><li><a href="templating-and-markup-faq.html">Templating and Markup FAQ</a></li><li><a href="page-and-component-classes-faq.html">Page And Component Classes FAQ</a></li><li><a href="forms-and-form-components-faq.html">Forms and Form Components FAQ</a></li><li><a href="beaneditform-faq.html">BeanEditForm FAQ</a></li><li><a href="link-components-faq.html">Link Components FAQ</a></li><li><a href="component-events-faq.html">Component Events FAQ</a ></li><li><a href="javascript-faq.html">JavaScript FAQ</a></li><li><a >href="ajax-components-faq.html">Ajax Components FAQ</a></li><li><a >href="injection-faq.html">Injection FAQ</a></li><li><a >href="tapestry-inversion-of-control-faq.html">Tapestry Inversion of Control >FAQ</a></li><li><a href="security-faq.html">Security FAQ</a></li><li><a >href="integration-with-existing-applications.html">Integration with existing >applications</a></li><li><a href="request-processing-faq.html">Request >Processing FAQ</a></li><li><a >href="limitations.html">Limitations</a></li><li><a >href="specific-errors-faq.html">Specific Errors FAQ</a></li><li><a >href="hibernate-support-faq.html">Hibernate Support FAQ</a></li><li><a >href="maven-support-faq.html">Maven Support FAQ</a></li><li><a >href="release-upgrade-faq.html">Release Upgrade FAQ</a></li></ul></li><li><a >href="release-notes.html">Release Notes</a><ul >class="childpages-macro"><li><a href="how-to-upgrade.html">How to >Upgrade</a></li><li><a href="release-notes-50.html">Release Notes 5.0</a></li><li><a href="release-notes-51.html">Release Notes 5.1</a></li><li><a href="release-notes-52.html">Release Notes 5.2</a><ul class="childpages-macro"><li><a href="release-notes-520.html">Release Notes 5.2.0</a></li><li><a href="release-notes-521.html">Release Notes 5.2.1</a></li><li><a href="release-notes-522.html">Release Notes 5.2.2</a></li><li><a href="release-notes-523.html">Release Notes 5.2.3</a></li><li><a href="release-notes-524.html">Release Notes 5.2.4</a></li><li><a href="release-notes-525.html">Release Notes 5.2.5</a></li><li><a href="release-notes-526.html">Release Notes 5.2.6</a></li></ul></li><li><a href="release-notes-53.html">Release Notes 5.3</a></li><li><a href="release-notes-531.html">Release Notes 5.3.1</a></li><li><a href="release-notes-532.html">Release Notes 5.3.2</a></li><li><a href="release-notes-533.html">Release Notes 5.3.3</a></li><li><a href="release-notes-534.html">Release Notes 5.3.4< /a></li><li><a href="release-notes-535.html">Release Notes 5.3.5</a></li><li><a href="release-notes-536.html">Release Notes 5.3.6</a></li><li><a href="release-notes-537.html">Release Notes 5.3.7</a></li><li><a href="release-notes-54.html">Release Notes 5.4</a></li><li><a href="release-notes-538.html">Release Notes 5.3.8</a></li></ul></li><li><a href="javascript-rewrite-in-54.html">JavaScript Rewrite in 5.4</a></li><li><a href="support.html">Support</a></li><li><a href="developer-information.html">Developer Information</a><ul class="childpages-macro"><li><a href="building-tapestry-from-source.html">Building Tapestry from Source</a></li><li><a href="confluence-site-setup.html">Confluence Site Setup</a><ul class="childpages-macro"><li><a href="since-and-deprecated-user-macros.html">Since and Deprecated User Macros</a></li></ul></li><li><a href="developer-bible.html">Developer Bible</a></li><li><a href="release-process.html">Release Process</a></li><li><a href="the-tapestr y-jail.html">The tapestry jail</a></li><li><a href="version-numbers.html">Version Numbers</a></li></ul></li></ul></div><p>Welcome to the Tapestry 5 Documentation. A rich collection of guides is available to teach beginners the basics and help even experienced developers deepen their understanding of Tapestry's power. <em>Code less, deliver more!</em></p><h1 id="Documentation-Highlights">Highlights</h1><p>These are the most useful starting points for common needs.</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="introduction.html">Introduction</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An overview of Tapestry's general approach and philosophy</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="getting-started.html">Getting Started</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick guide to creating your first Tapestry project, using M aven</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="tapestry-tutorial.html">Tapestry Tutorial</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Picks up where <em>Getting Started</em> leaves off, explaining in greater detail how Tapestry works</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="user-guide.html">User Guide</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Detailed articles on every Tapestry feature</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="community.html">Community</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Getting support, mailing lists, JIRA, outside resources, and access to the source</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="cookbook.html">Cookbook</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Guides to doing common things with Tapestry</p></td></tr><tr><td colspan=" 1" rowspan="1" class="confluenceTd"><p><strong><a href="frequently-asked-questions.html">FAQ</a></strong></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A quick place to check for common problems and solutions</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="component-cheat-sheet.html">Component Cheat Sheet</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A concise guide to component classes, methods and annotations</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link" href="http://refcardz.dzone.com/refcardz/apache-tapestry-50?oid=hom7948" rel="nofollow">Refcard</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A color, six page foldout guide to Tapestry 5.0 (PDF)</p></td></tr></tbody></table></div><h1 id="Documentation-APIandComponentReference">API and Component Reference</h1><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>API (Javadoc):</p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a class="external-link" href="http://tapestry.apache.org/5.3.7/apidocs/">5.3.8</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://tapestry.apache.org/current">5.4</a></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Component Reference:</p></th><td colspan="1" rowspan="1" class="confluenceTd"><p>5.0<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.1<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>5.2<sup>1</sup></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><em><span class="confluence-link">(same as current)</span></em></p></td><td co lspan="1" rowspan="1" class="confluenceTd"><a href="component-reference.html">5.4 (current)</a></td></tr><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Release Notes:</p></th><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-50.html">5.0</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-51.html">5.1</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-52.html">5.2</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a href="release-notes-538.html">5.3.8</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><a href="release-notes-54.html">5.4</a></td></tr></tbody></table></div><p><sup>1</sup> needs to be built manually from archived sources at <a class="external-link" href="http://archive.apache.org/dist/tapestry/">http://archive.apache.org/dist/tapestry/</a>.</p><h1 id="Documentation-UserGuide">User Guide</h1><p><span class="confluence-anchor-link" id="D ocumentation-userguide"></span>The <a href="user-guide.html">User Guide</a> consists of over 75 pages of detailed information on the concepts behind Tapestry and instructions on how to use this powerful tool. Highlights include:</p><ul><li><a href="legacy-javascript.html">Legacy JavaScript</a> and <a href="ajax-and-zones.html">Ajax and Zones</a> describe Tapestry's built-in support for dynamic in-page behavior.</li><li><a href="integrating-with-spring-framework.html">Integrating with Spring Framework</a> describes how to integrate Spring into your Tapestry application.</li><li><a href="hibernate.html">Tapestry/Hibernate Integration Library</a> provides out-of-the-box support for using Hibernate 3.</li><li><a href="bean-validation.html">JSR 303: Bean Validation</a> shows how to use standard annotations for validation</li><li><a href="integration-testing.html">Integration Testing</a> shows how to test your application with Selenium.</li></ul><p><a href="user-guide.html">More t opics</a>...</p><h1 id="Documentation-BlogsbyTapestryDevelopersandtheCommunity">Blogs by Tapestry Developers and the Community</h1><ul><li><a class="external-link" href="http://tapestryjava.blogspot.com/" rel="nofollow">Tapestry Central</a> is Howard Lewis Ship's blog. As the creator of Tapestry, he provides valuable insights into Tapestry's latest features and future directions.</li><li><a class="external-link" href="http://blog.tapestry5.de/" rel="nofollow">Igor Drobiazko's blog</a> (committer & PMC) contains news on Tapestry development and will guide you through some of the most exciting parts of Tapestry.</li><li><a class="external-link" href="http://tawus.wordpress.com/" rel="nofollow">Java Magic</a> (by Taha Hafeez, committer) has a series of tutorials illustrating some of the more advanced Tapestry and Plastic features and techniques.</li><li><a class="external-link" href="http://blog.andyhot.gr/tag/tapestry/" rel="nofollow">Andreas Andreou's blog</a> (committer & ; PMC) has news and commentary on Tapestry.</li><li><a class="external-link" href="http://spreadthesource.com/" rel="nofollow">Spread the Source blog</a> (Christophe Cordenier and Robin Komiwes) has news and advanced tutorials on Tapestry 5.</li></ul><h1 id="Documentation-BooksonTapestry">Books on Tapestry</h1><p>There are at least 9 published <a href="books.html">books on Tapestry</a>, including three on Tapestry 5 — and more on the way.</p><h1 id="Documentation-ArticlesonTapestry">Articles on Tapestry</h1><ul><li>This <a class="external-link" href="http://www.laliluna.de/articles/the-web-framework-evaluation.html" rel="nofollow">eBook</a> published in 2009 contains a <a class="external-link" href="http://www.laliluna.de/articles/2009/08/14/tapestry-web-framework-evaluation-and-test.html" rel="nofollow">good introduction and analysis of Tapestry 5</a></li></ul><ul><li><a class="external-link" href="http://www.infoq.com/articles/tapestry5-intro" rel="nofollow">Tapestry 5 for Nonbelievers</a> will convince the skeptical why Tapestry is the best web framework.</li></ul><p><a href="articles.html">More articles</a>...</p><h1 id="Documentation-TapestryPresentations">Tapestry Presentations</h1><ul><li>Mark Shead's <a class="external-link" href="http://blog.markshead.com/900/tapestry-5-10-minute-demo/" rel="nofollow">10 Minute Demo</a></li><li>H. L. Ship's <a class="external-link" href="https://www.youtube.com/watch?v=5BGt7eMFC20" rel="nofollow">Tapestry 5.4 - Bootstrap-enhanced Exception Reporting</a></li><li><a class="external-link" href="http://jazoon.com/Portals/0/Content/slides/th_a7_1130-1220_drobiazko.pdf" rel="nofollow">JavaServer Faces 2.0 vs. Tapestry 5</a> (PDF) A Head-to-Head Comparison by Igor Drobiazko at Jazoon 2010</li><li><a class="external-link" href="http://www.parleys.com/#st=5&sl=5&id=1700" rel="nofollow">Tapestry 5: Java power, Scripting Ease</a> (VIDEO) by Howard Lewis Ship at Devoxx 2009</li></ul><p><a href="presentati ons.html">More presentations</a> ...</p><h1 id="Documentation-TapestryWikis">Tapestry Wikis</h1><ul><li><a class="external-link" href="http://wiki.apache.org/tapestry/FrontPage">Tapestry Community Wiki</a> (Moin Moin) contains a lot of user-generated information on different Tapestry use cases.</li><li><a href="https://cwiki.apache.org/confluence/x/VCFkAQ">Documentation Source wiki</a> (Confluence) – the wiki used as the content editor for the official Tapestry documentation</li></ul><h1 id="Documentation-Gettinghelp">Getting help</h1><p>The primary method of support is the <a href="mailing-lists.html">Tapestry Mailing Lists</a>.</p><p>In addition, there are occasionally questions and answers about Tapestry at <a class="external-link" href="http://stackoverflow.com/questions/tagged/tapestry" rel="nofollow">Stack Overflow</a>.</p><h1 id="Documentation-TheDeveloperCorner">The Developer Corner</h1><p><a href="developer-information.html">Developer Information</a> gives inform ation needed by the Tapestry developers</p><p> </p></div> </div> <div class="clearer"></div> Added: websites/production/tapestry/content/google-app-engine.html ============================================================================== --- websites/production/tapestry/content/google-app-engine.html (added) +++ websites/production/tapestry/content/google-app-engine.html Mon Feb 15 23:19:51 2016 @@ -0,0 +1,111 @@ +<!DOCTYPE html> + + <!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<html> +<head> + <meta http-equiv="Content-type" content="text/html;charset=UTF-8"> + <meta http-equiv="x-ua-compatible" content="IE=9"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <title> + Google App Engine -- Apache Tapestry + </title> + <link type="text/css" rel="stylesheet" href="/resources/space.css" /> + + <link href='/resources/highlighter/styles/shCoreCXF.css' rel='stylesheet' type='text/css' /> + <link href='/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' /> + <script src='/resources/highlighter/scripts/shCore.js' type='text/javascript'></script> + <script src='/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script> + <script> + SyntaxHighlighter.defaults['toolbar'] = false; + SyntaxHighlighter.all(); + </script> + + <link href="/styles/style.css" rel="stylesheet" type="text/css"/> + +</head> + +<body> + + <div class="wrapper bs"> + + <div id="navigation"><div class="nav"> +<ul class="alternate"><li><a href="index.html">Home</a></li><li><a href="getting-started.html">Getting Started</a></li><li><a href="documentation.html">Documentation</a></li><li><a href="download.html">Download</a></li><li><a href="about.html">About</a></li><li><a href="community.html">Community</a></li><li><a class="external-link" href="http://www.apache.org/">Apache</a></li><li><a class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li></ul> +</div></div> + + <div id="top"> + <div id="smallbanner"><div class="searchbox" style="float:right;margin: .3em 1em .1em 1em"><span style="color: #999; font-size: 90%">Tapestry docs, issues, wikis & blogs:</span> +<form enctype="application/x-www-form-urlencoded" method="get" action="http://tapestry.apache.org/search.html"> + <input type="text" name="q"> + <input type="submit" value="Search"> +</form> + +</div><div class="emblem" style="float:left"><p><a href="index.html"><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://tapestry.apache.org/images/tapestry_small.png" data-image-src="http://tapestry.apache.org/images/tapestry_small.png"></span></a></p></div><div class="title" style="float:left; margin: 0 0 0 3em"><h1 id="SmallBanner-PageTitle">Google App Engine</h1></div></div> + <div class="clearer"></div> + </div> + + <div class="clearer"></div> + + <div id="breadcrumbs"> + <a href="index.html">Apache Tapestry</a> > <a href="documentation.html">Documentation</a> > <a href="cookbook.html">Cookbook</a> > <a href="google-app-engine.html">Google App Engine</a> + <a class="edit" title="Edit this page (requires approval -- just ask on the mailing list)" href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=61339935">edit</a> + </div> + + <div id="content"> + <div id="ConfluenceContent"><p>Tapestry apps should run fine on Google App Engine (GAE) if you follow certain important steps.</p><ul><li><p>Set the <code>tapestry.restrictive-environment</code> configuration symbol to true (to prevent Tapestry from writing exception reports and cached resources to the file system)</p></li><li><p>Set the <code>tapestry.thread-pool-enabled</code> configuration symbol to false (to prevent Tapestry's PeriodicExecutor from attempting to spawn threads)</p></li></ul><h2 id="GoogleAppEngine-Exampleconfiguration">Example configuration</h2><p>Your application's module class (generally AppModule.java) can set these symbols where it sets others (either in a method named contributeApplicationDefaults or one annotated with @ApplicationDefaults and @Contribute), as shown below.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>AppModule (partial)</b></div><di v class="codeContent panelContent pdl"> +<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">     @ApplicationDefaults +     @Contribute(SymbolProvider.class) +     public static void configureMyApp( +        MappedConfiguration<String, String> configuration) +         { +             configuration.add(SymbolConstants.PRODUCTION_MODE, "true"); + configuration.add(SymbolConstants.RESTRICTIVE_ENVIRONMENT, "true"); + configuration.add(IOCSymbols.THREAD_POOL_ENABLED, "false"); + ... +     }</pre> +</div></div><p>NOTE: Setting production mode to true is generally only desirable in production and QA/testing environments), but you can override that symbol with a JVM system property (<code>-Dtapestry.production-mode=false</code>) in those environments.</p></div> + </div> + + <div class="clearer"></div> + + <div id="footer"> + <div id="footer"><p>Apache Tapestry, Tapestry, Apache, the Apache feather logo, and the Apache Tapestry project logo are trademarks of The Apache Software Foundation.<br clear="none"> +</p><p><script type="text/javascript"> + var _gaq = _gaq || []; + _gaq.push(['_setAccount', 'UA-400821-1']); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); + })(); +</script></p><p></p></div> + </div> + + <div id="comments_thread"></div> + <script type="text/javascript" src="https://comments.apache.org/show_comments.lua?site=tapestry&page=http://tapestry.apache.org/google-app-engine.html" async="true"> + </script> + <noscript> + <iframe width="100%" height="500" src="https://comments.apache.org/iframe.lua?site=tapestry&page=http://tapestry.apache.org/google-app-engine.html"></iframe> + </noscript> + + </div> + +</body> +</html>