Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tapestry Wiki" for change notification.
The "Tapestry5HowTos" page has been changed by BobHarner. The comment on this change is: Formatted all the titles. http://wiki.apache.org/tapestry/Tapestry5HowTos?action=diff&rev1=208&rev2=209 -------------------------------------------------- * [[http://tapestry.apache.org/tapestry5/|Home site, with deeper explanations of all the aspects behind Tapestry]] * [[Tapestry5Training|Tapestry 5 Training]] - Tapestry 5 overview with practical work * [[Tapestry5Blogs|Tapestry 5 Blogs]] - A list of blogs dealing with Tapestry 5 - * [[Tapestry5OpensourceApps]] - List of Tapestry 5 open source applications + * [[Tapestry5OpensourceApps|Open Source Apps]] - List of Tapestry 5 open source applications == Preparing your development environment == * [[Tapestry5UsefulConfigurationsForDevelopment|Useful configurations for development]] - Tapestry 5 configurations that will make your development easier @@ -29, +29 @@ * [[Tapestry5HowToEclipseCodeTemplates|Eclipse code templates]] * [[Tapestry5HowToIdeaLifeTemplates|!IntelliJ IDEA live templates]] * [[http://bbwebcraft.blogspot.com/2008/12/task-1-create-skeleton-tapestry-5.html|Create a skeleton Tapestry 5 project and run it (Eclipse, Maven, m2eclipse)]] - * [[http://bbwebcraft.blogspot.com/2009/01/task-4-customize-eclipse-for-tapestry-5.html|Customize Eclipse for Tapestry 5 template editing]] + * [[http://bbwebcraft.blogspot.com/2009/01/task-4-customize-eclipse-for-tapestry-5.html|Eclipse template editing]] - Customize Eclipse for Tapestry .tml template editing - * [[Tapestry5JSPEditorEclipse|Using Eclipse JSP Editor and custom tld file for code completion]] + * [[Tapestry5JSPEditorEclipse|Eclipse Code Completion]] - Using Eclipse JSP editor and custom tld file for code completion == Components == - * [[http://tapestry.apache.org/component-reference.html|Tapestry 5 - Components Reference]] + * [[http://tapestry.apache.org/component-reference.html|Components Reference]] * [[http://jumpstart.doublenegative.com.au/jumpstart|Jumpstart - Components configuration examples]] - * Tapestry5CheckOutTheSourceCode - Examples and Demos of many components in the source code, like the Palette, Grid, !BeanEditForm, etc. + * [[Tapestry5CheckOutTheSourceCode|Check Out the Source Code]] - Examples and Demos of many components in the source code, like the Palette, Grid, !BeanEditForm, etc. - * Tapestry5HowToCreateYourOwnComponents - Creating your own components is really simple, and fun to do as well. (This example implements a www.dhtmlgoodies.com drag-and-drop-folder tree component) + * [[Tapestry5HowToCreateYourOwnComponents|Creating Your Own Components]] - Creating your own components is really simple, and fun to do as well. (This example implements a www.dhtmlgoodies.com drag-and-drop-folder tree component) - * Tapestry5HowToCreateYourOwnComponentLibrary - Steps to create a reusable library (JAR) of T5 components. + * [[Tapestry5HowToCreateYourOwnComponentLibrary|Creating Your Own Component Library]] - Steps to create a reusable library (JAR) of T5 components. - * Tapestry5OutputLocaleNumber - Creating a new component for formatting (numbers) according to locale, using literals (integer, decimal or currency). It's based on Output component. + * [[Tapestry5OutputLocaleNumber|Outputting Locale-formatted Numbers]] - Creating a new component for formatting (numbers) according to locale, using literals (integer, decimal or currency). It's based on Output component. - * [[Tapestry5HowToCreateATabPanel]] - Explains how to create a tab panel. + * [[Tapestry5HowToCreateATabPanel|Creating a Tab Panel]] - Explains how to create a tab panel. - * Tapestry5SubmitContextComponent - A Submit component that passes a context + * [[Tapestry5SubmitContextComponent|Submit with Context]] - A Submit component that passes a context - * Tapestry5SubmitContextWithNavigationComponent - A Submit component that passes a context and allows event handler to return navigational object. + * [[Tapestry5SubmitContextWithNavigationComponent|Submit with Context and Navigation]] - A Submit component that passes a context and allows event handler to return navigational object. - * Tapestry5AnyComponent - A deprecated but still useful component that does ... nothing (by default) + * [[Tapestry5AnyComponent|"Any" Component]] - A deprecated but still useful component that does ... nothing (by default) - * Tapestry5ImageComponent - Another deprecated component that's useful for making "previewable" templates + * [[Tapestry5ImageComponent|Image Component]] - Another deprecated component that's useful for making "previewable" templates - * [[http://lombok.demon.co.uk/tapestry5Demo/|Tapestry 5 components]] By Shing Hing Man + * [[http://lombok.demon.co.uk/tapestry5Demo/|Tapestry 5 Components]] - By Shing Hing Man - * Several projects with [[http://code.google.com/hosting/search?q=label:tapestry5|Tapestry 5 components at Google Code]], share your components here. + * [[http://code.google.com/hosting/search?q=label:tapestry5|Tapestry 5 components at Google Code]] - Several projects with Tapestry 5 components -- share your components here. - * Tapestry5TreeComponent - A tree component based on DHTMLgoodies.com's drag 'n drop folder tree + * [[Tapestry5TreeComponent|Tree Component]] - A tree component based on DHTMLgoodies.com's drag 'n drop folder tree - * Tapestry5EnhancedPalette - Based heavily on the existing core palette and uses Matt Kruse's Option Transfer !JavaScript (Works in IE!) + * [[Tapestry5EnhancedPalette|Enhanced Palette Component]] - Based heavily on the existing core palette and uses Matt Kruse's Option Transfer !JavaScript (Works in IE!) - * Tapestry5Layoutcomponent A sophisticated Layout component - * Tapestry5PaletteEvents How to invoke a !JavaScript function when the selected items are added/removed/reordered in a Palette + * [[Tapestry5PaletteEvents|Palette Events]] - How to invoke a !JavaScript function when the selected items are added/removed/reordered in a Palette - * Tapestry5GridComponent Some tricks using the Grid component + * [[Tapestry5GridComponent|Grid Component Tricks]] - Some tricks using the Grid component - * Tapestry5AndJavaScriptExplained - A detailed look at how Tapestry 5 integrates !JavaScript into your application. In this article we create a mixin for adding a !JavaScript confirmation box to link components, explaining each step. Full source included. + * [[Tapestry5AndJavaScriptExplained|Tapestry 5 and JavaScript Explained]] - A detailed look at how Tapestry 5 integrates !JavaScript into your application. In this article we create a mixin for adding a !JavaScript confirmation box to link components, explaining each step. + * [[Tapestry5Layoutcomponent|Advanced Layout Component]] - A sophisticated Layout component - * Tapestry5SimpleAndPowerfulLayouts - Creates flexible layouts, using a simple reusable component. + * [[Tapestry5SimpleAndPowerfulLayouts|Simple And Powerful Layouts]] - Creates flexible layouts, using a simple reusable component. - * Tapestry5LayoutWithMenu - Layout with added menu bar + * [[Tapestry5LayoutWithMenu|Layout with Menu]] - Layout with added menu bar - * Tapestry5EnumAsComponentParameter - Defining a new enum as a component parameter, and adding the string -> enum type coercion for it + * [[Tapestry5EnumAsComponentParameter|Enum as Component Parameter]] - Defining a new enum as a component parameter, and adding the string -> enum type coercion for it * [[Captcha]] == Code snippets == === General === - * Tapestry5HowToFormatDateTimeEtc - How to format Date, Time, timestamps, Decimals, Numbers, Currencies + * [[Tapestry5HowToFormatDateTimeEtc|How to Format Date/Time, etc]] - How to format Date, Time, timestamps, Decimals, Numbers, Currencies - * Tapestry5LocalizedDateField - How to create a localized !DateField for !BeanModel. + * [[Tapestry5LocalizedDateField|Localized Date Field]] - How to create a localized !DateField for !BeanModel. - * Tapestry5OutputtingRawHtml - How to output raw, unfiltered HTML + * [[Tapestry5OutputtingRawHtml|Outputting Raw Html]] - How to output raw, unfiltered HTML - * [[Tapestry5LinkingToNonTapestryURIs]] - How to link to non-Tapestry URIs (useful for Acegi integration) + * [[Tapestry5LinkingToNonTapestryURIs|Linking To Non Tapestry URIs]] - How to link to non-Tapestry URIs (useful for Acegi integration) - * Tapestry5ObtainingHttpServletRequest - How to obtain the !HttpServletRequest, !HttpServletResponse and !HttpSession if you really need them + * [[Tapestry5ObtainingHttpServletRequest|Obtaining the HttpServletRequest]] - How to obtain the !HttpServletRequest, !HttpServletResponse and !HttpSession if you really need them - * [[Tapestry5HowToCreateAPropertyEditBlock]] - Explains how to create a property editor and contribute it to the [[http://tapestry.apache.org/beaneditform-guide.html|BeanEditForm]]. + * [[Tapestry5HowToCreateAPropertyEditBlock|Creating A Property Edit Block]] - Explains how to create a property editor and contribute it to the [[http://tapestry.apache.org/beaneditform-guide.html|BeanEditForm]]. - * Tapestry5HowToUseForms - Examples of how forms are connected to methods in your code. + * [[Tapestry5HowToUseForms|How to Use Forms]] - Examples of how forms are connected to methods in your code. - * Tapestry5ExceptionPage - How to display your own exception page. + * [[Tapestry5ExceptionPage|Exception Page]] - Displaying your own exception page. - * Tapestry5RedirectException - Redirect to another URL from anywhere inside a page or component. + * [[Tapestry5RedirectException|Redirect Exception]] - Redirect to another URL from anywhere inside a page or component. + * [[Tapestry5HowToUseTapestryForCustomErrorPages|Using Tapestry For Custom Error Pages]] - How to serve a custom 404 page, or other error, using Tapestry - * Tapestry5HowToChangeLocale - Change the locale of the user. + * [[Tapestry5HowToChangeLocale|Changing Locale]] - Change the locale of the user. - * Tapestry5HowToIncludeJavaScript - Explains how to add your own custom !JavaScript functions. + * [[Tapestry5HowToIncludeJavaScript|Including JavaScript]] - Explains how to add your own custom !JavaScript functions. - * [[Tapestry5HowToIntegrateJQuery]] - Include jQuery and it's plugins to spice up your pages! + * [[Tapestry5HowToIntegrateJQuery|Integrating jQuery]] - Include jQuery and it's plugins to spice up your pages! - * [[Tapestry5How_to_make_a_basic_crud]] show you how easy is the conception of a CRUD cycle with Tapestry 5 + * [[Tapestry5How_to_make_a_basic_crud|Making a Basic Crud App]] show you how easy is the conception of a CRUD cycle with Tapestry 5 - * Tapestry5HowToRunTaskInThread - run a task (Runnable) in a separate thread + * [[Tapestry5HowToRunTaskInThread|Running Tasks in a Separate Thread]] - run a task (Runnable) in a separate thread - * Tapestry5HowToWorkQueue - run multiple task through a !WorkQueue with one or more threads + * [[Tapestry5HowToWorkQueue|Running Tasks in a WorkQueue]] - run multiple task through a !WorkQueue with one or more threads - * Tapestry5HowToUsePersistentFieldStrategy - How to create a !PersistentFieldStrategy for the Persist annotation. working cookie example + * [[Tapestry5HowToUsePersistentFieldStrategy|Using a Persistent Field Strategy]] - How to create a !PersistentFieldStrategy for the Persist annotation. - * Tapestry5HowToAddValidators - How to add your own validators to tapestry + * [[Tapestry5HowToAddValidators|Adding Validators]] - How to add your own validators to tapestry - * Tapestry5HowToXhtml - How to override the default markup model to always use XHTML compliant tags + * [[Tapestry5HowToXhtml|Outputting XHTML]] - How to override the default markup model to always use XHTML compliant tags - * Tapestry5HowToReadSymbolsFromPropertiesFile - How to have symbols coming from a properties file and how to use them in your pages/components + * [[Tapestry5HowToReadSymbolsFromPropertiesFile|Reading Symbols From a Property File]] - How to have symbols coming from a property file and how to use them in your pages/components - * Tapestry5HowToUseTapestryForCustomErrorPages - How to serve a custom 404 page, or other error, using Tapestry - * Tapestry5HowToWebappFullPath - How to get the real path of the webapp directory. + * [[Tapestry5HowToWebappFullPath|Getting the Webapp Path]] - How to get the real path of the webapp directory. - * [[Tapestry5HowToReadAFileFromContext]] - How a service reads a file from web app context folder + * [[Tapestry5HowToReadAFileFromContext|Reading a File from Webapp Context]] - How a service reads a file from web app context folder - * Tapestry5HowToUseTapestryTest - How to actually use Tapestry test + * [[Tapestry5HowToUseTapestryTest|Using Tapestry Test]] - How to actually use Tapestry test - * Tapestry5HowToVisualizeComponentHierarchy - How to visualize the component hierarchy just on your pages in the browser + * [[Tapestry5HowToVisualizeComponentHierarchy|Visualizing the Component Hierarchy]] - How to visualize the component hierarchy just on your pages in the browser - * Tapestry5HowToAddAttributesConditionally - How to conditionally render HTML tag attributes in Tapestry templates + * [[Tapestry5HowToAddAttributesConditionally|Conditionally Rendering Attributes]] - How to conditionally render HTML tag attributes in Tapestry templates - === Selection Objects === + === Select Components === - * Tapestry5DisplayableSelectionModel - A selection model for objects that implement an interface. Used for select components and more. + * [[Tapestry5DisplayableSelectionModel|Displayable Selection Model]] - A selection model for objects that implement an interface. Used for select components and more. - * Tapestry5SelectObject - An alternative implementation of the Select core component based on the Daniel Jue's !GenericSelectionModel and !GenericValueEncoder classes. + * [[Tapestry5SelectObject|Select Component Alternative]] - An alternative implementation of the Select core component based on the Daniel Jue's !GenericSelectionModel and !GenericValueEncoder classes. - * Tapestry5MultipleSelectOnObjects - Explains how to build a multiple select component based on Daniel Jue's !GenericValueEncoder classes. + * [[Tapestry5MultipleSelectOnObjects|Multiple-Select Component]] - Explains how to build a multiple select component based on Daniel Jue's !GenericValueEncoder classes. - * Tapestry5HowtoSelectWithObjects - another example on how to make <SELECT> filled with objects + * [[Tapestry5HowtoSelectWithObjects|Selecting with Objects]] - another example on how to make <SELECT> filled with objects - * Tapestry5AnotherSelectWithObjects - One more example with on how to make <SELECT> on objects, now with annotations. + * [[Tapestry5AnotherSelectWithObjects|Selecting with Objects, #2]] - yet another example with on how to make <SELECT> on objects, now with annotations. === Inversion of Control (IOC) === - * Tapestry5HowToIocOnly - Example of using tapestry-ioc standalone (without web part). And the same, but with tapestry-hibernate added Tapestry5HowToIocAndHibernate + * [[Tapestry5HowToIocOnly|Using Tapestry-IoC Alone]] - Example of using tapestry-ioc standalone (without web part). And the same, but with tapestry-hibernate added Tapestry5HowToIocAndHibernate - * [[Tapestry5HowToCreateADispatcher]] - How to create a completely transparent access control system by implementing a Dispatcher. + * [[Tapestry5HowToCreateADispatcher|Creating a Dispatcher]] - How to create a completely transparent access control system by implementing a Dispatcher. - * [[Tapestry5HowToCreateADispatcher2]] - A supplemental article showing how to access request-specific data (ASOs) from a singleton service. To demonstrate we expand on the code shown in the first article. + * [[Tapestry5HowToCreateADispatcher2|Creating a Dispatcher, part 2]] - A supplemental article showing how to access request-specific data (ASOs) from a singleton service. To demonstrate we expand on the code shown in the first article. - * Tapestry5HowToDecorateService - An example of a simple service decorator + * [[Tapestry5HowToDecorateService|Decorating a Service]] - An example of a simple service decorator - * [[Tapestry5HowToCreateAConfigureableService]] - How to use symbols to create a sandbox and production version of a service. Requires Tapestry5HowToReadSymbolsFromPropertiesFile (PayPal example) + * [[Tapestry5HowToCreateAConfigureableService|Creating a Configurable Service]] - How to use symbols to create a sandbox and production version of a service. Requires Tapestry5HowToReadSymbolsFromPropertiesFile (!PayPal example) === Binding Prefixes === Bindings are used in templates ''${message:myMessageKey}'' or as attribute to components ''<t:mycomponent value="literal:Hello world"/>'' to access message in resource bundles, properties, pass String literals and many more. The following pages explain how to write your own bindings. - * Tapestry5HowToAddBindingPrefix - An example of a list: binding prefix. Useful for Action/Event/!PageLink context etc. + * [[Tapestry5HowToAddBindingPrefix|Adding a "list:" Binding Prefix]] - An example of a list: binding prefix. Useful for Action/Event/!PageLink context etc. - * Tapestry5HowToAddMapBindingPrefix - An example of a map: binding prefix. Useful for supplying key=value pairs to components. + * [[Tapestry5HowToAddMapBindingPrefix|Adding a "map:" Binding Prefix]] - An example of a map: binding prefix. Useful for supplying key=value pairs to components. - * Tapestry5HowToAddBindingPrefixCycle - An example of an cycle: binding prefix. Makes zebra effect simple to do {{{<t:grid .... rowClass="cycle:line1,line2">}}} + * [[Tapestry5HowToAddBindingPrefixCycle|Adding a "cycle:" Binding Prefix]] - An example of an cycle: binding prefix. Makes zebra effect simple to do {{{<t:grid .... rowClass="cycle:line1,line2">}}} - * Tapestry5HowToAddMessageFormatBindingPrefix - Describes how to add a messageformat prefix for specifying values for use in messages inline. + * [[Tapestry5HowToAddMessageFormatBindingPrefix|Adding a "messageformat:" Binding Prefix]] - Describes how to add a messageformat prefix for specifying values for use in messages inline. === Localization === - * Tapestry5HowToDomainLevelLocalization - An example of how to overwrite the Locale domain-dependent + * [[Tapestry5HowToDomainLevelLocalization|Domain-level Localization]] - An example of how to overwrite the Locale domain-dependent + * [[Tapestry5HowToChangeLocale|Changing Locale]] - Change the locale of the user. + * [[Tapestry5OutputLocaleNumber|Outputting Locale-formatted Numbers]] - Creating a new component for formatting (numbers) according to locale, using literals (integer, decimal or currency). It's based on Output component. === Streaming Data === - * [[Tapestry5HowToCreatePieChartsInAPage]] - An example of dynamic charts inside a page (Using StreamResponse) + * [[Tapestry5HowToCreatePieChartsInAPage|Creating Pie Charts in a Page]] - An example of dynamic charts inside a page (Using StreamResponse) - * [[Tapestry5HowToCreateASimpleGraphComponent]] - An example of simple pie chart component (Using StreamResponse) + * [[Tapestry5HowToCreateASimpleGraphComponent|Creating a Simple Graph Component]] - An example of simple pie chart component (Using StreamResponse) - * [[Tapestry5HowToCreateGenericGraphComponent]] - A component that takes in a JFreeChart as a parameter + * [[Tapestry5HowToCreateGenericGraphComponent|Creatinga Generic Graph Component]] - A component that takes in a JFreeChart as a parameter - * [[Tapestry5HowToCreateADynamicPDF]] - A simple example of how to return a dynamically generated PDF from an event (Using StreamResponse) + * [[Tapestry5HowToCreateADynamicPDF|Creating a Dynamic PDF]] - A simple example of how to return a dynamically generated PDF from an event (Using StreamResponse) - * Tapestry5HowToStreamAnExistingBinaryFile - A simple example of how to stream an existing file, like an image. (Using StreamResponse) + * [[Tapestry5HowToStreamAnExistingBinaryFile|Streaming an Existing Binary File]] - A simple example of how to stream an existing file, like an image. (Using StreamResponse) == Integration with other frameworks == - * Tapestry5ModuleRegistry - List of different extensions and modules + * [[Tapestry5ModuleRegistry|Module Registry]] - List of different extensions and modules === Hibernate === - * Tapestry5HowToUseTapestryHibernate - Example/Tutorial of how to use Tapestry-Hibernate in your code. + * [[Tapestry5HowToUseTapestryHibernate|Using Tapestry-Hibernate]] - Example/Tutorial of how to use Tapestry-Hibernate in your code. - * [Tapestry5HowToIocAndHibernate] - Example of using tapestry-oc+tapestry-hibernate standalone (without web part). + * [[Tapestry5HowToIocAndHibernate|Using Tapestry-IoC and Tapestry-Hibernate Standalone]] - Example of using tapestry-oc+tapestry-hibernate standalone (without web part). - * [[Tapstry5First_project_with_Tapestry5,_Spring_and_Hibernate]] - A translation of a french article about integrating Spring, Hibernate and Tapestry + * [[Tapstry5First_project_with_Tapestry5,_Spring_and_Hibernate|First Project with Tapestry 5, Spring & Hibernate]] - A translation of a french article about integrating Spring, Hibernate and Tapestry - * Tapestry5ManipulateClassesAtRuntime show you how easy is to add class methods at runtime. + * [[Tapestry5ManipulateClassesAtRuntime|Manipulating Classes at Runtime]] show you how easy is to add class methods at runtime. - * Tapestry5HibernateGridDatasource how to use the [[http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/hibernate/HibernateGridDataSource.html|HibernateGridDatasource]] class from tapestry-hibernate module. + * [[Tapestry5HibernateGridDatasource|Using HibernateGridDatasource]] how to use the HibernateGridDatasource class from tapestry-hibernate module. - * Tapestry5HibernateGridDatasource1 simple hibernated grid datasource using HQL (Hibernate Query Language). + * [[Tapestry5HibernateGridDatasource1|Using HibernateGridDatasource with HQL]] simple hibernated grid datasource using HQL (Hibernate Query Language). - * Tapestry5HibernateGridDatasource2 simple hibernated grid datasource using hibernate criteria API. + * [[Tapestry5HibernateGridDatasource2|Using HibernateGridDatasource with Criteria API]] simple hibernated grid datasource using hibernate criteria API. - * Tapestry5HibernateGridDatasource3 very flexible abstract GridDataSource for using any org.hibernate.Query object, so you can use HQL, SQL, Criteria, DaO, etc. + * [[Tapestry5HibernateGridDatasource3|Flexible Abstract GridDataSource]] very flexible abstract GridDataSource for using any org.hibernate.Query object, so you can use HQL, SQL, Criteria, DaO, etc. - * Tapestry5BrainlessEntityTimestamping How to have entities automatically time stamped using tapestry-hibernate, simply by adding certain fields! + * [[Tapestry5BrainlessEntityTimestamping|Brainless Entity Timestamping]] - How to have entities automatically time stamped using tapestry-hibernate, simply by adding certain fields! - * Tapestry5AvoidingLazyInitializationExceptions How to avoid "Lazy Initialization" exceptions + * [[Tapestry5AvoidingLazyInitializationExceptions|Avoiding Lazy Initialization Exceptions]] - How to avoid "Lazy Initialization" exceptions - * [[Tapestry5AvoidingDifferentObjectWithSameIDExceptions]] How to avoid "Different Object with same ID" exceptions + * [[Tapestry5AvoidingDifferentObjectWithSameIDExceptions|Avoiding DOWSID Exceptions]] - How to avoid "Different Object with same ID" exceptions === JPA === * [[http://tynamo.org/tapestry-jpa+guide|Tapestry JPA Guide]] === Spring === - * Tapestry5SpringIntegration - How to inject Spring beans into Tapestry pages and components + * [[Tapestry5SpringIntegration|Integrating with Spring]] - How to inject Spring beans into Tapestry pages and components - * Tapestry51SpringJpaIntegration - Quick tutorial on using Tapestry with Spring Transactions and JPA + * [[Tapestry51SpringJpaIntegration|Integrating with Spring and JPA]] - Quick tutorial on using Tapestry with Spring Transactions and JPA - * [[Tapestry5_How_To_Integrate_Components_With_Spring_Transactions]] - brief tutorial of how to integrate Tapestry5 components with Spring transactions. + * [[Tapestry5_How_To_Integrate_Components_With_Spring_Transactions|Integrating with Spring Transactions]] - brief tutorial of how to integrate Tapestry5 components with Spring transactions. - * [[Tapestry5-TestWithTapestry-Spring]] - How to test Tapestry pages which use Spring Beans + * [[Tapestry5-TestWithTapestry-Spring|Testing with Tapestry-Spring]] - How to test Tapestry pages which use Spring Beans === Google Web Toolkit (GWT) === * [[http://www.pmdit.se/blog/2008/04/03/tapestry_5_and_gwt_part_1.html|Tapestry 5 and GWT]] [[http://www.pmdit.se/blog/2008/04/08/tapestry_5_and_gwt_part_2.html|Part 2]] - * [[Tapestry5GWTIntegration]] - An example based heavily on Pär Dahlberg's blog example on http://www.pmdit.se/blog, with generalized design tips. + * [[Tapestry5GWTIntegration|Integrating with GWT]] - An example based heavily on Pär Dahlberg's blog example on http://www.pmdit.se/blog, with generalized design tips. === Adobe Flash === - * [[http://knol.google.com/k/toby-hobson/tapestry-5-flash-integration/|Tapestry5 Adobe Flash integration]] - Explains how to create reusable Tapestry components which render swf's + * [[http://knol.google.com/k/toby-hobson/tapestry-5-flash-integration/|Adobe Flash Integration]] - Explains how to create reusable Tapestry components which render swf's == Security == Security is the condition of being protected against danger, loss, and criminals. === Authentication and Authorization related === - * [[http://wiki.interldap.objectweb.org/xwiki/bin/view/Main/Tapestry5HowToAcegiCas|How to use T5 with Acegi Security and CAS]] - Francois Armand explains how he combines T5, Acegi Security and CAS (A Central Authentication Service, providing intranet single sign-on). + * [[http://wiki.interldap.objectweb.org/xwiki/bin/view/Main/Tapestry5HowToAcegiCas|Using Acegi Security and CAS]] - Francois Armand explains how he combines T5, Acegi Security and CAS (A Central Authentication Service, providing intranet single sign-on). - * Tapestry5Acegi How to secure Tapestry5 pages with Java5 annotations using the Acegi security framework + * [[Tapestry5Acegi|Securing Pages with ACEGI Annotations]] - How to secure Tapestry5 pages with Java5 annotations using the Acegi security framework - * Tapestry5AcegiNoAnnotations How to use Acegi Security with Tapestry 5, in the classical way (no annotations, some XML) + * [[Tapestry5AcegiNoAnnotations|Securing Pages with ACEGI XML]] - How to use Acegi Security with Tapestry 5, in the classical way (no annotations, some XML) - * Tapestry5HowToControlAccess - Another supplemental article based on [[Tapestry5HowToCreateADispatcher2]] showing how to control access to pages based on an annotation. + * [[Tapestry5HowToControlAccess|Controlling Access with Annotations]] - Another supplemental article based on [[Tapestry5HowToCreateADispatcher2]] showing how to control access to pages based on an annotation. - * [[Tapestry5HowToSecureWithAcegiAndLDAP]] - How to protect you application using Acegi and LDAP + * [[Tapestry5HowToSecureWithAcegiAndLDAP|Securing with ACEGI & LDAP]] - How to protect you application using Acegi and LDAP - * [[Tapestry5HowToSecureWithSpringAndLDAP]] - How to protect you application using Spring Security and LDAP + * [[Tapestry5HowToSecureWithSpringAndLDAP|Securing with Spring & LDAP]] - How to protect you application using Spring Security and LDAP - * Tapestry5HowToSpringSecurityAndOpenId - How to provide OpenID authentication to your clients using tapestry-spring-security + * [[Tapestry5HowToSpringSecurityAndOpenId|Spring Security & OpenID]] - How to provide OpenID authentication to your clients using tapestry-spring-security - * Tapestry5HowToMitigateLoginAttacks - How to track failed logins and mitigate brute force or dictionary attacks + * [[Tapestry5HowToMitigateLoginAttacks|Mitigating Login Attacks]] - How to track failed logins and mitigate brute force or dictionary attacks === Integrity === - * [[Tapestry5CSRF]] - How to protect against 'Cross-site request forgeries' (CSRF) + * [[Tapestry5CSRF|Preventing Cross-site Request Forgeries]] - How to protect against 'Cross-site request forgeries' (CSRF) - * Tapestry5PreventClientSideChanges - How to protect server side generated values against client side changes using a HMAC + * [[Tapestry5PreventClientSideChanges|Preventing Client Side Changes]] - How to protect server side generated values against client side changes using a HMAC == Bug workarounds / patches == - * Tapestry5Utf8Encoding - How to use UTF-8 encoding to support foreign characters + * [[Tapestry5Utf8Encoding|Using UTF-8 Encoding]] - How to use UTF-8 encoding to support foreign characters - * Tapestry5RootPathEmptyResponse - A runtime patch for the root path empty response bug + * [[Tapestry5RootPathEmptyResponse|Root Path Empty Response Patch]] - A runtime patch for the root path empty response bug - * [[https://issues.apache.org/jira/browse/TAPESTRY-1745|Tapestry5.0.5 Palette Component IE Bug Patch]] + * [[https://issues.apache.org/jira/browse/TAPESTRY-1745|TAPESTRY-1745]] - Tapestry5.0.5 Palette Component IE Bug Patch - * [[HowToRunTapestry5OnJBoss5]] - How to run Tapestry 5 on JBoss 5 + * [[HowToRunTapestry5OnJBoss5|Running Tapestry on JBoss]] - How to run Tapestry 5 on JBoss 5 - * HowToRunTapestry5Websphere - How to tun Tapestry 5 on Websphere (6.1) + * [[HowToRunTapestry5Websphere|Running Tapestry on WebSphere]] - How to tun Tapestry 5 on Websphere (6.1) * [[https://issues.apache.org/jira/browse/TAP5|Tapestry5 bug tracker]] == Meta info == - * Tapestry5HowToCreateYourQuickstartWithMaven206 - If you've had some trouble getting maven2.0.6 to compile the quickstart, here's how to do it. + * [[Tapestry5HowToCreateYourQuickstartWithMaven206|Quickstart with Maven 2.0.6]] - If you've had some trouble getting maven2.0.6 to compile the quickstart, here's how to do it. - * Tapestry5WhereToStoreExternalResources - Where to store resources like CSS, JS and Images in your application + * [[Tapestry5WhereToStoreExternalResources|Where to Store External Resources]] - Where to store resources like CSS, JS and Images in your application - * Tapestry5WhereToStoreConfigurationResources - Where to store resources like Hibernate configuration files, logging properties, and web application context information in your application + * [[Tapestry5WhereToStoreConfigurationResources|Where to Store Configuration Resources]] - Where to store resources like Hibernate configuration files, logging properties, and web application context information in your application - * Tapestry5HowToSearchTheMailingLists - Force Google to only search the mailing list (results found in these lists are often hidden due to the limited #links) + * [[Tapestry5HowToSearchTheMailingLists|Searching the Mailing List]] - Force Google to only search the mailing list (results found in these lists are often hidden due to the limited #links) - * Tapestry5HowToOverrideTheDefaultErrorMessageBanner - How to override the default error message banner + * [[Tapestry5HowToOverrideTheDefaultErrorMessageBanner|Overriding the Default Error Message Banner]] - How to override the default error message banner - * Tapestry5Trolls - How to deal with trolls on the list, and one in particular + * [[Tapestry5Trolls|Dealing with Trolls]] - How to deal with trolls on the list, and one in particular == Coding traps == - * Tapestry5HowToNotMakeCustomComponent - If you are making a custom component, there are few things you shouldn't do... + * [[Tapestry5HowToNotMakeCustomComponent|How Not to Make a Custom Component]] - If you are making a custom component, there are few things you shouldn't do... - * Tapestry5ComponentClassResolverError - When organizing your component (or page) directories, pay special attention! + * [[Tapestry5ComponentClassResolverError|Component Class Resolver Error]] - When organizing your component (or page) directories, pay special attention! - * Tapestry5Caveats - or more literally, "let him beware". + * [[Tapestry5Caveats|Caveats]] - or more literally, "let him beware". == How to contribute == - * [[Tapestry5HowToContributeNewTranslation|Contributing new translations]] + * [[Tapestry5HowToContributeNewTranslation|Contributing New Translations]] - * [[http://tapestry5.ideascale.com|Tapestry 5 Caffe (Post your new ideas here. Check out other people's ideas and vote on the ones you like best. Talk about ideas.)]] + * [[http://tapestry5.ideascale.com|Tapestry 5 Cafe (Post your new ideas here. Check out other people's ideas and vote on the ones you like best. Talk about ideas.)]] == IRC == Chris Lewis mentioned Tapestry's IRC: #tapestry AT irc.freenode.net: "There's usually 5 ~ 8 of us in there, and we work/talk about Tapestry." --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
