[CONF] Apache Tapestry > User Guide

2010-09-30 Thread confluence







User Guide
Page edited by Christophe Cordenier


 Changes (2)
 



...
* [Service Status|Service Status]  
h2. Tapestry IOC  As with Tapestry 5 in general, the goal of Tapestry IoC is greater simplicity, greater power, and an avoidance of XML. To fully understand extension capabilities of Tapestry you should be aware of this built-in [IoC|IOC].  h3. Architecture  * [|Introduction][Introduction|TAPESTRY:IoC] * [Overview|TAPESTRY:IoC - overview] * [TAPESTRY:IoC - module]  h3. Features  * [Services|TAPESTRY:IoC - service] * [Advisors|TAPESTRY:IoC - advice] * [Decorators|TAPESTRY:IoC - decorator]  
h2. Integrate Hibernate  
* [TAPESTRY:Hibernate - Core - Conf|TAPESTRY:Hibernate - Core - Conf] 
* [TAPESTRY:User Guide] * [TAPESTRY:Statistics] 
...

Full Content

Hot Features


	Class Reloading



Configuration


	Configuration
	URL rewriting
	HTTPS
	Localization
	Response Compression



Understand


	Page Lifecycle
	Component Rendering
	Request Processing
	Type Coercion



Develop your pages and components

Structure


	Project Layout
	Page Navigation
	Logging
	Component Classes
	Component Templates
	Component Events
	Component Mixins
	Component Parameters



Templating


	Content Type and Markup
	Layout Component
	CSS
	DOM
	Assets
	Property Expressions



Handle persistence


	Persistent Page Data
	Persistent State



Working with IOC


	Injection



_javascript_


	Ajax & _javascript_



Working with Forms


	Input Validation
	BeanEditForm Guide
	Upload files



Test


	Unit testing pages or components
	Integrate with Selenium test tool



Tooling


	Generate your Component Reference
	Service Status



Tapestry IOC

As with Tapestry 5 in general, the goal of Tapestry IoC is greater simplicity, greater power, and an avoidance of XML. To fully understand extension capabilities of Tapestry you should be aware of this built-in IoC.

Architecture


	IntroductionIntroduction
	Overview
	IoC - module



Features


	Services
	Advisors
	Decorators



Integrate Hibernate


	Hibernate - Core - Conf
	User Guide
	Statistics



Integrate Spring


	Inject your spring beans inside Tapestry components



Advanced


	Aliases
	Environmental Services





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > IoC cookbook

2010-09-30 Thread confluence







IoC cookbook
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> IoC


To: 

Apache Tapestry
> Cookbook





Children moved



IoC cookbook - basics
IoC cookbook - override
IoC cookbook - patterns
IoC cookbook - servconf



   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > IoC

2010-09-30 Thread confluence







IoC
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved



IoC - advice
IoC - autoload
IoC - case
IoC - coerce
IoC - command
IoC - configuration
IoC - decorator
IoC - injection
IoC - logging
IoC - module
IoC - order
IoC - overview
IoC - parallel
IoC - pipeline
IoC - provider
IoC - run
IoC - serialization
IoC - service
IoC - shadow
IoC - startup
IoC - strategy
IoC - symbols



   
Change Notification Preferences
   
   View Online
   









[jira] Assigned: (TAP5-1287) Services do not reload even though they should

2010-09-30 Thread Howard M. Lewis Ship (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1287?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Howard M. Lewis Ship reassigned TAP5-1287:
--

Assignee: Howard M. Lewis Ship

> Services do not reload even though they should
> --
>
> Key: TAP5-1287
> URL: https://issues.apache.org/jira/browse/TAP5-1287
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-ioc
>Affects Versions: 5.2.2
>Reporter: Howard M. Lewis Ship
>Assignee: Howard M. Lewis Ship
>
> Been working on an application that uses a lot of JMS.  I noticed that 
> reloads did not appear to happen as expected.
> DEBUG MessageSinkSource - Invoking constructor public 
> com.fivoosh.services.activemq.MessageSinkSourceImpl(org.slf4j.Logger,com.fivoosh.services.activemq.ActiveMQConnectionSource,org.apache.tapestry5.ioc.services.PerthreadManager,com.fivoosh.services.TimeService,java.util.Map).
> DEBUG MessageSinkSource - BEGIN Analyzing 
> com.fivoosh.services.activemq.MessageSinkSourceImpl$1
> DEBUG MessageSinkSource -   END Analyzing 
> com.fivoosh.services.activemq.MessageSinkSourceImpl$1
> DEBUG MessageSinkSource - BEGIN Analyzing 
> com.fivoosh.services.activemq.MessageSinkSourceImpl$TextQueueSender
> DEBUG MessageSinkSource -   END Analyzing 
> com.fivoosh.services.activemq.MessageSinkSourceImpl$TextQueueSender
> DEBUG MasterMessageHandler - Processing message 
> 'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:9:1:1' from queue 'echo'
> Message received on thread ActiveMQ Session Task:
> {
>   "foo" : "bar"
> }
> I then changed the code (it affects the logging message that starts 
> "Processing message ":
> DEBUG MasterMessageHandler - Implementation class 
> com.fivoosh.services.activemq.MasterMessageHandlerImpl has changed and will 
> be reloaded on next use.
> DEBUG MasterMessageHandler - Processing message 
> 'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:10:1:1' from queue 
> 'echo'
> Message received on thread ActiveMQ Session Task:
> {
>   "foo" : "bar"
> }
> Note that the message indicates the implementation class changed, but the old 
> behavior is stuck.
> Later changes to the code and new messages sent:
> DEBUG MasterMessageHandler - Processing message 
> 'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:12:1:1' from queue 
> 'echo'
> Message received on thread ActiveMQ Session Task:
> {
>   "foo" : "baz"
> }
> ... do not even register that a change occured.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TAP5-1287) Services do not reload even though they should

2010-09-30 Thread Howard M. Lewis Ship (JIRA)
Services do not reload even though they should
--

 Key: TAP5-1287
 URL: https://issues.apache.org/jira/browse/TAP5-1287
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-ioc
Affects Versions: 5.2.2
Reporter: Howard M. Lewis Ship


Been working on an application that uses a lot of JMS.  I noticed that reloads 
did not appear to happen as expected.


DEBUG MessageSinkSource - Invoking constructor public 
com.fivoosh.services.activemq.MessageSinkSourceImpl(org.slf4j.Logger,com.fivoosh.services.activemq.ActiveMQConnectionSource,org.apache.tapestry5.ioc.services.PerthreadManager,com.fivoosh.services.TimeService,java.util.Map).
DEBUG MessageSinkSource - BEGIN Analyzing 
com.fivoosh.services.activemq.MessageSinkSourceImpl$1
DEBUG MessageSinkSource -   END Analyzing 
com.fivoosh.services.activemq.MessageSinkSourceImpl$1
DEBUG MessageSinkSource - BEGIN Analyzing 
com.fivoosh.services.activemq.MessageSinkSourceImpl$TextQueueSender
DEBUG MessageSinkSource -   END Analyzing 
com.fivoosh.services.activemq.MessageSinkSourceImpl$TextQueueSender
DEBUG MasterMessageHandler - Processing message 
'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:9:1:1' from queue 'echo'
Message received on thread ActiveMQ Session Task:
{
  "foo" : "bar"
}


I then changed the code (it affects the logging message that starts "Processing 
message ":



DEBUG MasterMessageHandler - Implementation class 
com.fivoosh.services.activemq.MasterMessageHandlerImpl has changed and will be 
reloaded on next use.
DEBUG MasterMessageHandler - Processing message 
'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:10:1:1' from queue 'echo'
Message received on thread ActiveMQ Session Task:
{
  "foo" : "bar"
}

Note that the message indicates the implementation class changed, but the old 
behavior is stuck.

Later changes to the code and new messages sent:


DEBUG MasterMessageHandler - Processing message 
'ID:Howards-Mighty-Tool.local-56885-1285896586008-3:0:12:1:1' from queue 'echo'
Message received on thread ActiveMQ Session Task:
{
  "foo" : "baz"
}


... do not even register that a change occured.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[CONF] Apache Tapestry > Developer Bible

2010-09-30 Thread confluence







Developer Bible
Page edited by Kalle Korhonen


 Changes (1)
 



...
 The year on the copyright should be updated as a file changes.  As you are reviewing your changes 
before checking them in, try to check the copyright date, and add the current year to the list if not 
present.  
...

Full Content

This is a semi-random outpouring of thoughts related to being a Tapestry committer.

IDE

IntelliJ

It's a free license for all committers and it's just better. Yes, the first few days
can be an unpleasant fumble because everything is almost, but not quite, familiar.  Pretty soon you'll love IDEA and
recognize that Eclipse has been bending you over and doing unspeakable things.

There are shared code formatting settings in >.  This will prevent
unexpected conflicts due to formatting.

Eclipse

Howard uses this ... because he can't manage to switch IDEs constantly (he uses Eclipse for training). Lately
its gotten better.

Copyrights

All source files should have a copyright comment on top, except where such a comment
would interfere with its behavior.  For example, component template files omit the comment.

The year on the copyright should be updated as a file changes.  As you are reviewing your changes
before checking them in, try to check the copyright date, and add the current year to the list if not
present.

Commit Messages

Always provide a commit message.  I generally try to work off the JIRA, so my commit message is often:

TAP5-1234: Make the Foo Widget more Ajax-tastic!


It is very important to include the JIRA issue id in the commit.  This is used in many places:
JIRA links issues to the SVN commits for that issue (very handy for seeing what changed
as part of a bug fix).  The Hudson CI server does as well, and will actually link SVN commits to issues after
succesfully building.

JIRA Procedures

All Tapestry committers should be registerred with JIRA and part of the tapestry-developers JIRA group.

I work the following JIRA list: JIRA Work Queue.


Ideally, we would always work top priortity to low priority.  I (Howard) sometimes jump out of order,
if there's something cool to work on that fits in an available time slot.  Alternately, you are always
allowed to change the priority of a bug before or as you work it.

Starting work  

When you start to work on an issue, make sure it is assigned to you and use the start progress
option.

I often add comments about the state of the fix, or the challenges in creating a fix.  This often spurs the Issue's adder to
provide more details.

I often update the issue description to make it more legible and more precise, i.e., "NPE in CheckUpdates"
might become "NullPointerException when checking for updates to files that have been deleted".  Verbose is good.

Closing bugs  

Is it a bug fix without tests?  No. In some cases, I write new tests to prove that an issue is not valid and
then leave the tests in place – then close the bug as invalid.

A good plan is to write a test that fails then work the code until the test passes.
I'm also surprised by how often code works in a unit test but fails unexpectedly in an integration test.
As the G-Man says "Expect unforseen consequences".

When you check in a fix, you should close the issue and make sure the fix release is correct.

We're playing fast and loose – a better procedure would be to mark the bug resolved and verify
the fix before closing it.  That's ok, we have a community to double check our work .

For anything non-trivial, wait for the Hudson CI server to build.  It catches a lot of things ... such as
files that were not added to SVN.  And even IntelliJ has a bit of trouble with wildly refactored code.
Hudson will catch all that.

Invalid issues and duplicates

Always provide comments about why_ an issue is invalid ("A Ruby implementation of Tapestry is out of scope for the project."), or at least, a link to the duplicate issues.

Close the issue but make sure the fix release is blank.  Otherwise, the issue _will be listed
in the release notes_, which we don't want.

Copyrights

The ASF copyright must appear on all Java source files.  Technically it should appear on all non-binary
files in the repository.

As you make changes to files, update the copyright to add the current year to the list.  The goal is that the copyright
notice includes the year in which files change.  When creating a new file, don't back date the copyright year ... starwith the current year.  Try not to change the copyright year on files that haven't actually changed.

IntelliJ has a great comparison view: Cmd-9 to see the local changes, the Cmd-D to see the differences.
I whip through the changes (using Cmd-forward arrow) and make sure copyrights are up to date as I review the changes
prior to a commit.

[jira] Commented: (TAP5-1286) Remove Maven APT files for documentation that has moved into the Confluence wiki

2010-09-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12916713#action_12916713
 ] 

Hudson commented on TAP5-1286:
--

Integrated in tapestry-5.2-freestyle #200 (See 
[https://hudson.apache.org/hudson/job/tapestry-5.2-freestyle/200/])
TAP5-1286: Remove Maven APT files for documentation that has moved into the 
Confluence wiki
TAP5-1286: Remove Maven APT files for documentation that has moved into the 
Confluence wiki


> Remove Maven APT files for documentation that has moved into the Confluence 
> wiki
> 
>
> Key: TAP5-1286
> URL: https://issues.apache.org/jira/browse/TAP5-1286
> Project: Tapestry 5
>  Issue Type: Task
>  Components: documentation
>Affects Versions: 5.2.2
>Reporter: Howard M. Lewis Ship
>Assignee: Howard M. Lewis Ship
>
> Most of the documentation has been moved into Confluence.  It's time to 
> delete the APT and XDOC format documentation.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



svn commit: r1003306 - in /tapestry/tapestry5/trunk/src/site: apt/dev/bible.apt site.xml

2010-09-30 Thread hlship
Author: hlship
Date: Thu Sep 30 21:50:47 2010
New Revision: 1003306

URL: http://svn.apache.org/viewvc?rev=1003306&view=rev
Log:
TAP5-1286: Remove Maven APT files for documentation that has moved into the 
Confluence wiki

Removed:
tapestry/tapestry5/trunk/src/site/apt/dev/bible.apt
Modified:
tapestry/tapestry5/trunk/src/site/site.xml

Modified: tapestry/tapestry5/trunk/src/site/site.xml
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/src/site/site.xml?rev=1003306&r1=1003305&r2=1003306&view=diff
==
--- tapestry/tapestry5/trunk/src/site/site.xml (original)
+++ tapestry/tapestry5/trunk/src/site/site.xml Thu Sep 30 21:50:47 2010
@@ -95,11 +95,6 @@
 http://wiki.apache.org/tapestry/Tapestry5HowTos"/>
 
 
-
-
-
-
-
 
 
 




[CONF] Apache Tapestry > Developer Bible

2010-09-30 Thread confluence







Developer Bible
Page  added by Howard M. Lewis Ship

 

 This is a semi-random outpouring of thoughts related to being a Tapestry committer.

IDE

IntelliJ

It's a free license for all committers and it's just better. Yes, the first few days
can be an unpleasant fumble because everything is almost, but not quite, familiar.  Pretty soon you'll love IDEA and
recognize that Eclipse has been bending you over and doing unspeakable things.

There are shared code formatting settings in >.  This will prevent
unexpected conflicts due to formatting.

Eclipse

Howard uses this ... because he can't manage to switch IDEs constantly (he uses Eclipse for training). Lately
its gotten better.

Copyrights

All source files should have a copyright comment on top, except where such a comment
would interfere with its behavior.  For example, component template files omit the comment.

The year on the copyright should be updated as a file changes.  As you are reviewing your changes
before checking them in, try to check the coyright date, and add the current year to the list if not
present.

Commit Messages

Always provide a commit message.  I generally try to work off the JIRA, so my commit message is often:

TAP5-1234: Make the Foo Widget more Ajax-tastic!


It is very important to include the JIRA issue id in the commit.  This is used in many places:
JIRA links issues to the SVN commits for that issue (very handy for seeing what changed
as part of a bug fix).  The Hudson CI server does as well, and will actually link SVN commits to issues after
succesfully building.

JIRA Procedures

All Tapestry committers should be registerred with JIRA and part of the tapestry-developers JIRA group.

I work the following JIRA list: JIRA Work Queue.


Ideally, we would always work top priortity to low priority.  I (Howard) sometimes jump out of order,
if there's something cool to work on that fits in an available time slot.  Alternately, you are always
allowed to change the priority of a bug before or as you work it.

Starting work  

When you start to work on an issue, make sure it is assigned to you and use the start progress
option.

I often add comments about the state of the fix, or the challenges in creating a fix.  This often spurs the Issue's adder to
provide more details.

I often update the issue description to make it more legible and more precise, i.e., "NPE in CheckUpdates"
might become "NullPointerException when checking for updates to files that have been deleted".  Verbose is good.

Closing bugs  

Is it a bug fix without tests?  No. In some cases, I write new tests to prove that an issue is not valid and
then leave the tests in place – then close the bug as invalid.

A good plan is to write a test that fails then work the code until the test passes.
I'm also surprised by how often code works in a unit test but fails unexpectedly in an integration test.
As the G-Man says "Expect unforseen consequences".

When you check in a fix, you should close the issue and make sure the fix release is correct.

We're playing fast and loose – a better procedure would be to mark the bug resolved and verify
the fix before closing it.  That's ok, we have a community to double check our work .

For anything non-trivial, wait for the Hudson CI server to build.  It catches a lot of things ... such as
files that were not added to SVN.  And even IntelliJ has a bit of trouble with wildly refactored code.
Hudson will catch all that.

Invalid issues and duplicates

Always provide comments about why_ an issue is invalid ("A Ruby implementation of Tapestry is out of scope for the project."), or at least, a link to the duplicate issues.

Close the issue but make sure the fix release is blank.  Otherwise, the issue _will be listed
in the release notes_, which we don't want.

Copyrights

The ASF copyright must appear on all Java source files.  Technically it should appear on all non-binary
files in the repository.

As you make changes to files, update the copyright to add the current year to the list.  The goal is that the copyright
notice includes the year in which files change.  When creating a new file, don't back date the copyright year ... starwith the current year.  Try not to change the copyright year on files that haven't actually changed.

IntelliJ has a great comparison view: Cmd-9 to see the local changes, the Cmd-D to see the differences.
I whip through the changes (using Cmd-forward arrow) and make sure copyrights are up to date as I review the changes
prior to a commit.

Public vs. Private/Internal

This is a real big deal.  As long as code is in the internal package, we have a high degree of carte-blanche
to change it.  As soon as code is public, we become handcuffed to backwards compatibility.

Interfaces are public, implementations are private.  You can see this is the bulk of the code, where
org.apache.tapestry5.services is almost all interfaces and the implementations are
in org.apache.t

svn commit: r1003270 - in /tapestry/tapestry5/trunk: src/site/ src/site/apt/cookbook/ src/site/apt/dev/ src/site/apt/guide/ src/site/fml/faq/ tapestry-webflow/ tapestry-webflow/src/main/java/org/apach

2010-09-30 Thread hlship
Author: hlship
Date: Thu Sep 30 21:05:46 2010
New Revision: 1003270

URL: http://svn.apache.org/viewvc?rev=1003270&view=rev
Log:
TAP5-1286: Remove Maven APT files for documentation that has moved into the 
Confluence wiki

Removed:
tapestry/tapestry5/trunk/src/site/apt/cookbook/defaultparameter.apt
tapestry/tapestry5/trunk/src/site/apt/cookbook/exceptions.apt
tapestry/tapestry5/trunk/src/site/apt/cookbook/index.apt
tapestry/tapestry5/trunk/src/site/apt/cookbook/informals.apt
tapestry/tapestry5/trunk/src/site/apt/cookbook/lib.apt
tapestry/tapestry5/trunk/src/site/apt/cookbook/switch.apt
tapestry/tapestry5/trunk/src/site/apt/dev/checklist.apt
tapestry/tapestry5/trunk/src/site/apt/dev/env.apt
tapestry/tapestry5/trunk/src/site/apt/guide/ajax.apt
tapestry/tapestry5/trunk/src/site/apt/guide/alias.apt
tapestry/tapestry5/trunk/src/site/apt/guide/appstate.apt
tapestry/tapestry5/trunk/src/site/apt/guide/assets.apt
tapestry/tapestry5/trunk/src/site/apt/guide/beaneditform.apt
tapestry/tapestry5/trunk/src/site/apt/guide/coercion.apt
tapestry/tapestry5/trunk/src/site/apt/guide/component-classes.apt
tapestry/tapestry5/trunk/src/site/apt/guide/compress.apt
tapestry/tapestry5/trunk/src/site/apt/guide/conf.apt
tapestry/tapestry5/trunk/src/site/apt/guide/content-type.apt
tapestry/tapestry5/trunk/src/site/apt/guide/css.apt
tapestry/tapestry5/trunk/src/site/apt/guide/dom.apt
tapestry/tapestry5/trunk/src/site/apt/guide/env.apt
tapestry/tapestry5/trunk/src/site/apt/guide/event.apt
tapestry/tapestry5/trunk/src/site/apt/guide/inject.apt
tapestry/tapestry5/trunk/src/site/apt/guide/layout.apt
tapestry/tapestry5/trunk/src/site/apt/guide/lifecycle.apt
tapestry/tapestry5/trunk/src/site/apt/guide/localization.apt
tapestry/tapestry5/trunk/src/site/apt/guide/logging.apt
tapestry/tapestry5/trunk/src/site/apt/guide/mixins.apt
tapestry/tapestry5/trunk/src/site/apt/guide/pagenav.apt
tapestry/tapestry5/trunk/src/site/apt/guide/parameters.apt
tapestry/tapestry5/trunk/src/site/apt/guide/persist.apt
tapestry/tapestry5/trunk/src/site/apt/guide/project-layout.apt
tapestry/tapestry5/trunk/src/site/apt/guide/propexp.apt
tapestry/tapestry5/trunk/src/site/apt/guide/reload.apt
tapestry/tapestry5/trunk/src/site/apt/guide/rendering.apt
tapestry/tapestry5/trunk/src/site/apt/guide/request.apt
tapestry/tapestry5/trunk/src/site/apt/guide/secure.apt
tapestry/tapestry5/trunk/src/site/apt/guide/servicestatus.apt
tapestry/tapestry5/trunk/src/site/apt/guide/templates.apt
tapestry/tapestry5/trunk/src/site/apt/guide/testing.apt
tapestry/tapestry5/trunk/src/site/apt/guide/unit-testing-pages.apt
tapestry/tapestry5/trunk/src/site/apt/guide/url-rewriting.apt
tapestry/tapestry5/trunk/src/site/apt/guide/validation.apt
tapestry/tapestry5/trunk/src/site/fml/faq/general.fml
tapestry/tapestry5/trunk/tapestry-webflow/pom.xml

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/ExternalContextSource.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/ExternalContextSourceImpl.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/FlowExecutionResultProcessor.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/FlowManagerImpl.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/InternalFlowManager.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/InternalFlowManagerImpl.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/InternalViewFactoryCreator.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/InternalViewFactoryCreatorImpl.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/PageViewWrapper.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/TapestryFlowURLHandler.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/internal/webflow/services/WebflowDispatcher.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/webflow/TapestryViewFactoryCreator.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/webflow/WebflowConstants.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/webflow/services/FlowManager.java

tapestry/tapestry5/trunk/tapestry-webflow/src/main/java/org/apache/tapestry5/webflow/services/WebFlowModule.java
tapestry/tapestry5/trunk/tapestry-webflow/src/s

[CONF] Apache Tapestry > Release Process

2010-09-30 Thread confluence







Release Process
Page edited by Andreas Andreou


 Changes (3)
 



...
 * Update your _Subversion_ workspace 
* Manually update the tapestry version in the source code of the Tapestry archetype (found in quickstart/src/main/resources/archetype-resources/*) to the version number to be released 
* mvn release:prepare * mvn release:perform 
...
h2. Notes  
{{mvn release:prepare}} does a very good job at guessing the right version numbers (i.e., stripping off the -SNAPSHOT suffix for the release version, 
and incrementing the version number for the new development version). If it's one of your first releases, consider trying {{mvn release:prepare -DdryRun=true}} and manually observing the differences in the poms (this command will not commit the updated poms - it'll just generate them). See [the Maven documentation|http://maven.apache.org/plugins/maven-release-plugin/introduction.html] for more details. 
 The Maven code assumes it is executing inside a Subversion (not Git+SVN) workspace. I often create a fresh checkout into a new directory. 
...

Full Content

Release Steps

The process can be summarized as:


	Update your Subversion workspace
	Manually update the tapestry version in the source code of the Tapestry archetype (found in quickstart/src/main/resources/archetype-resources/*) to the version number to be released
	mvn release:prepare
	mvn release:perform
	Generate and upload Binary / Source distributions
	
		The ant build script creates the distributions
		There's some manual work to sign and upload the distributions
	
	
	Login to Nexus, 'close' the automatically created staging repository and note its url
	Use the Manage Versions page in JIRA to add a new release (the new development release)
	Generate HTML Release Notes for the release
	
		Create a new child page of Release Notes
		Paste the HTML content into the new page (you'll have to use the {html} macro)
		Update Release Notes to point to the new page
	
	
	Send vote email ... 3 days pass
	Login to Nexus and promote the release
	SSH to people.apache.org and copy the Binary / Source distributions to the right directory
	Once files reach all mirrors, update the Downloads Page
	
		Dont forget to change the version number to the new release
		Dont forget to link to the new release's Release Notes page
	
	




Be aware that Maven will perform some automatic Subversion commits, and even create the new release tag for you! Make
sure to get those version numbers right; I've found to my dismay that it can be tricky to correct this after-the-fact.

Notes

mvn release:prepare does a very good job at guessing the right version numbers (i.e., stripping off the -SNAPSHOT suffix for the release version,
and incrementing the version number for the new development version). If it's one of your first releases, consider trying mvn release:prepare -DdryRun=true and manually observing the differences in the poms (this command will not commit the updated poms - it'll just generate them). See the Maven documentation for more details.

The Maven code assumes it is executing inside a Subversion (not Git+SVN) workspace. I often create a fresh checkout into a new directory.

The correct response to this prompt:

What is the SCM release tag or label for "Tapestry 5 Project"

is

5.X.X

This reflects that Tapestry stores its SVN tags in a slightly weird way (that made perfect sense at the time).

A template for the vote e-mail:



I've created and uploaded a release of Tapestry 5.x.x, ready to be
voted upon. 

The binary and source downloads are uploaded to:

http://people.apache.org/~XXX/tapestry-releases/

and the Maven artifacts staged to:

https://repository.apache.org/content/repositories/orgapachetapestry-XXX/

Please examine these files to determine if the new release, 5.X.X, is ready.

I've also created a 5.X.X tag in Subversion:

http://svn.apache.org/viewvc/tapestry/tapestry5/tags/releases/5.X.X/

On a successful vote, I'll move the files from these directories to
the proper distribution directories and update the Tapestry site documentation.

Vote will run for three days; on success I'll move the voted artifacts
into place and send out appropriate notifications.




I often embellish this template with extra detail.



Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > About

2010-09-30 Thread confluence







About
Page edited by Andreas Andreou


 Changes (1)
 



...
|| Name || ID || role || email address || website || | Dan Adams | dadams | committer | {align:right}dad...@apache.org{align} | | 
| Andreas Andreou | andyhot | PMC member | {align:right}andy...@apache.org{align} | http://andyhot.gr | 
| Christophe Cordenier | ccordenier | committer | {align:right}ccorden...@apache.org{align} |  http://spreadthesource.com | | Ben Dotte | bdotte | committer | {align:right}bdo...@apache.org{align} | | 
...

Full Content

Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.

Tapestry is released under the Apache Software Licence 2.0

Releases

Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5.

The people behind Tapestry




 Name 
 ID 
 role 
 email address 
 website 


 Dan Adams 
 dadams 
 committer 
 dad...@apache.org
 
 


 Andreas Andreou 
 andyhot 
 PMC member 
 andy...@apache.org
 
 http://andyhot.gr 


 Christophe Cordenier 
 ccordenier 
 committer 
 ccorden...@apache.org
 
  http://spreadthesource.com 


 Ben Dotte 
 bdotte 
 committer 
 bdo...@apache.org
 
 


 Igor Drobiazko 
 drobiazko 
 PMC member 
 drobia...@apache.org
 
 http://tapestry5.de 


 Thiago H. de Paula Figueiredo 
 thiagohp 
 PMC member 
 thiag...@apache.org
 
 


 Daniel Gredler 
 gredler 
 committer 
 gred...@apache.org
 
 


 Daniel Jue 
 djue 
 committer 
 d...@apache.org
 
 


 Robin Komiwes 
 robinkomiwes 
 committer 
 robinkomi...@apache.org
 
 http://spreadthesource.com 


 Jesse Kuhnert 
 jkuhnert 
 PMC member 
 jkuhn...@apache.org
 
 


 Richard Lewis-Shell 
 rlewisshell 
 PMC member 
 rlewissh...@apache.org
 
 


 Kevin Menard 
 kmenard 
 committer 
 kmen...@apache.org
 
 


 Marcus Schulte 
 mschulte 
 PMC member 
 mschu...@apache.org
 
 


 Howard M. Lewis Ship 
 hlship 
 PMC chair 
 hls...@apache.org
 
 http://howardlewisship.com 


 David Solis 
 dsolis 
 committer 
 dso...@apache.org
 
 


 Ulrich Stärk 
 uli 
 PMC member 
 u...@apache.org
 
 


 Ted Steen 
 tedst 
 committer 
 te...@apache.org
 
 


 Brian Wallace 
 bwallace 
 committer 
 bwall...@apache.org
 
 


 Robert D. Zeigler 
 robertdzeigler 
 committer 
 robertdzeig...@apache.org
 
 





Training and Support

Training on Tapestry and Support is available directly from the source: the Tapestry project committers:

	Howard Lewis Ship: Provides a multi-day, hands-on workshop on Tapestry, as well as mentoring, support and project work
	Thiago H. de Paula Figueriredo: Provides training and support on Tapestry and related technologies including Spring and Hibernate





Change Notification Preferences

View Online
|
View Changes









[jira] Assigned: (TAP5-1286) Remove Maven APT files for documentation that has moved into the Confluence wiki

2010-09-30 Thread Howard M. Lewis Ship (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Howard M. Lewis Ship reassigned TAP5-1286:
--

Assignee: Howard M. Lewis Ship

> Remove Maven APT files for documentation that has moved into the Confluence 
> wiki
> 
>
> Key: TAP5-1286
> URL: https://issues.apache.org/jira/browse/TAP5-1286
> Project: Tapestry 5
>  Issue Type: Task
>  Components: documentation
>Affects Versions: 5.2.2
>Reporter: Howard M. Lewis Ship
>Assignee: Howard M. Lewis Ship
>
> Most of the documentation has been moved into Confluence.  It's time to 
> delete the APT and XDOC format documentation.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[CONF] Apache Tapestry > Maven Support FAQ

2010-09-30 Thread confluence







Maven Support FAQ
Page edited by Howard M. Lewis Ship


 Changes (1)
 



...
then any expansions in _Tapestry templates_ that match against Maven project properties are substituted.  If you look at the deployed application you'll see that 
{{\${name\}}} {{$\{name\}}} is gone, replaced with your project's name! 
 The solution is to update your {{pom.xml}} and ignore any .tml files when 
...

Full Content

Maven Support

Why do Maven project names and other details show up in my pages?

Tapestry and maven both use the same syntax for dynamic portions of files:
the ${...} syntax.  When Maven is copying resources from src/main/resources,
and when filtering is enabled (which is not the default),
then any expansions in Tapestry templates that match against Maven project
properties are substituted.  If you look at the deployed application you'll see that
${name} is gone, replaced with your project's name!

The solution is to update your pom.xml and ignore any .tml files when
copying and filtering:

pom.xml (partial)





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Maven Support FAQ

2010-09-30 Thread confluence







Maven Support FAQ
Page edited by Howard M. Lewis Ship


 Changes (2)
 



...
   src/main/resources 
   **/*.tml  true
 
   src/main/resources**/*.tml  false
{newcode} 

Full Content

Maven Support

Why do Maven project names and other details show up in my pages?

Tapestry and maven both use the same syntax for dynamic portions of files:
the ${...} syntax.  When Maven is copying resources from src/main/resources,
and when filtering is enabled (which is not the default),
then any expansions in Tapestry templates that match against Maven project
properties are substituted.  If you look at the deployed application you'll see that
\${name} is gone, replaced with your project's name!

The solution is to update your pom.xml and ignore any .tml files when
copying and filtering:

pom.xml (partial)





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Maven Support FAQ

2010-09-30 Thread confluence







Maven Support FAQ
Page  added by Howard M. Lewis Ship

 

 Maven Support

Why do Maven project names and other details show up in my pages?

Tapestry and maven both use the same syntax for dynamic portions of files:
the ${...} syntax.  When Maven is copying resources from src/main/resources,
and when filtering is enabled (which is not the default),
then any expansions in Tapestry templates that match against Maven project
properties are substituted.  If you look at the deployed application you'll see that
\${name} is gone, replaced with your project's name!

The solution is to update your pom.xml and ignore any .tml files when
copying and filtering:

pom.xml (partial)




   
Change Notification Preferences
   
   View Online
   








[CONF] Apache Tapestry > Maven Support FAQ

2010-09-30 Thread confluence







Maven Support FAQ
Page  added by Howard M. Lewis Ship

 

 Maven Support

Why do Maven project names and other details show up in my pages?

Tapestry and maven both use the same syntax for dynamic portions of files:
the ${...} syntax.  When Maven is copying resources from src/main/resources,
and when filtering is enabled (which is not the default),
then any expansions in Tapestry templates that match against Maven project
properties are substituted.  If you look at the deployed application you'll see that
\${name} is gone, replaced with your project's name!

The solution is to update your pom.xml and ignore any .tml files when
copying and filtering:

pom.xml (partial)




   
Change Notification Preferences
   
   View Online
   








[CONF] Apache Tapestry > Hibernate Support FAQ

2010-09-30 Thread confluence







Hibernate Support FAQ
Page edited by Howard M. Lewis Ship


 Changes (1)
 



h2. Hibernate Support  
h3. How do I get Hibernate to startup up when the application starts up, rather than lazily with the first request for the application? 
...

Full Content

Hibernate Support

How do I get Hibernate to startup up when the application starts up, rather than lazily
with the first request for the application?

This was a minor problem in 5.0; by 5.1 it was just a matter of overriding the configuration system
tapestry.hibernate-early-startup to "true".



Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Hibernate Support FAQ

2010-09-30 Thread confluence







Hibernate Support FAQ
Page  added by Howard M. Lewis Ship

 

 How do I get Hibernate to startup up when the application starts up, rather than lazily
with the first request for the application?

This was a minor problem in 5.0; by 5.1 it was just a matter of overriding the configuration system
tapestry.hibernate-early-startup to "true".


   
Change Notification Preferences
   
   View Online
   








[CONF] Apache Tapestry > Download Tapestry

2010-09-30 Thread confluence







Download Tapestry
Page edited by Christophe Cordenier


 Changes (10)
 



h12. Download Tapestry 
 Tapestry releases are available from the Apache Mirrors. Each file is available for download from a mirror. Click any *Download* link below to be directed to the closest available mirror site. 
...
The source distribution includes all source files, including those for the Maven plugin modules.  
h23. License and Dependencies 
 Tapestry is distributed under the [Apache License, version 2.0|http://tapestry.apache.org/license.html]. 
...
*You may need to download some dependencies separately.*  
h23. Alpha Releases 
 Alpha releases (also known as "preview" releases) vary in stability and are always actively being developed / modified. Look here for most new development activity.  
h23. Beta Releases 
 Beta releases are expected to be more stable, with the bulk of effort going into fixing bugs rather than introducing new features.  
h23. Alpha Releases 
 
h12. Tapestry 5.2.0 
 |  | Mirrors | Checksum | Signature | 
...
| tapestry-src 5.2.0 binary (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-src-5.2.0.zip] | [MD5|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.zip.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.zip.asc] |  
h23. Stable Releases 
 Stable releases should be relatively free of critical bugs and are considered the _safest_ option if stability is a requirement.  
h12. Tapestry 5.1.0.5 (Stable) 
 Tapestry 5.1.0.5 is the stable release for [Tapestry 5.1|http://tapestry.apache.org/tapestry5.1/]. Tapestry 5.1 addresses some limitations in 5.0 and improves performance and scalability. 
...
| tapestry-src 5.1.0.5 binary (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-src-5.1.0.5.zip] | [MD5|http://www.apache.org/dist/tapestry/tapestry-src-5.1.0.5.zip.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-src-5.1.0.5.zip.asc] |  
h12. Tapestry 4.1.6 (Stable) 
 The next generation Tapestry 4 version that improves upon the existing Tapestry 4 series with lots of bug fixes / AJAX support / performance enhancements. 
...
| 4.1.6 source/docs (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-project-4.1.6-full.zip] | [MD5|http://www.apache.org/dist/tapestry/tapestry-project-4.1.6-full.zip.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-project-4.1.6-full.zip.asc] |  
h12. Archives 
 Looking for and older version of Tapestry? Try the [archives|http://archive.apache.org/dist/tapestry/]. 

Full Content

Download Tapestry

Tapestry releases are available from the Apache Mirrors. Each file is available for download from a mirror. Click any Download link below to be directed to the closest available mirror site.

Once you've downloaded a file, you should check it for authenticity. The MD5 link is an MD5 checksum file, used to ensure that the file downloaded properly. The ASC link is a GnuPG (GNU Privacy Guard) detached signature file, which can be authenticated against the file KEYS. This is used to ensure that what you downloaded is what we uploaded.

Tapestry releases are distributed as a binary and a source distribution. The binary distribution includes a code JAR for each module, as well as a source JAR for each module (having the Java source available is a huge benefit when working with Tapestry inside an IDE). The binary distribution now also includes third party dependencies (for dependencies with licenses compatible with the Apache Software License).

The source distribution includes all source files, including those for the Maven plugin modules.

License and Dependencies

Tapestry is distributed under the Apache License, version 2.0.

Tapestry incorporates additional software from the Apache project. In addition, Tapestry makes use of some non-Apache open source products, including Javassist (Mozilla Public License) and OGNL (OGNL license).

You may need to download some dependencies separately.

Alpha Releases

Alpha releases (also known as "preview" releases) vary in stability and are always actively being developed / modified. Look here for most new development activity.

Beta Releases

Beta releases are expected to be more stable, with the bulk of effort going into fixing bugs rather than introducing new features.

Alpha Releases

Tapestry 5.2.0




 
 Mirrors 
 Checksum 
 Signature 


 tapestry-bin 5.2.0 binary (tar.bz2) 
 Download 
 MD5 
 ASC 


 tapestry-bin 5.2.0 bina

[CONF] Apache Tapestry > Download Tapestry

2010-09-30 Thread confluence







Download Tapestry
Page edited by Christophe Cordenier


 Changes (2)
 



h1. Download Tapestry 
 
Tapestry releases are available from the Apache Mirrors. Each file is available for download from a mirror. Click any *Download* link below to be directed to the closest available mirror site.  Once you've downloaded a file, you should check it for authenticity. The *MD5* link is an MD5 checksum file, used to ensure that the file downloaded properly. The *ASC* link is a [GnuPG|http://www.gnupg.org/] (GNU Privacy Guard) detached signature file, which can be authenticated against the file [KEYS|http://www.apache.org/dist/tapestry/KEYS]. This is used to ensure that what you downloaded is what _we_ uploaded.  Tapestry releases are distributed as a binary and a source distribution. The binary distribution includes a code JAR for each module, as well as a source JAR for each module (having the Java source available is a huge benefit when working with Tapestry inside an IDE). The binary distribution now also includes third party dependencies (for dependencies with licenses compatible with the Apache Software License).  The source distribution includes all source files, including those for the Maven plugin modules.  h2. License and Dependencies  Tapestry is distributed under the [Apache License, version 2.0|http://tapestry.apache.org/license.html].  Tapestry incorporates additional software from the Apache project. In addition, Tapestry makes use of some non-Apache open source products, including [Javassist|http://www.jboss.com/products/javassist] (Mozilla Public License) and [OGNL|http://www.ognl.org/] ([OGNL license|http://www.ognl.org/copyright.html]).  *You may need to download some dependencies separately.*  h2. Alpha Releases  Alpha releases (also known as "preview" releases) vary in stability and are always actively being developed / modified. Look here for most new development activity.  h2. Beta Releases  Beta releases are expected to be more stable, with the bulk of effort going into fixing bugs rather than introducing new features.  h2. Alpha Releases  h1. Tapestry 5.2.0  |  | Mirrors | Checksum | Signature | | tapestry-bin 5.2.0 binary (tar.bz2) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.2.0.tar.bz2] | [MD5|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.tar.bz2.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.tar.bz2.asc] | | tapestry-bin 5.2.0 binary (tar.gz) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.2.0.tar.gz] | [MD5|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.tar.gz.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.tar.gz.asc] | | tapestry-bin 5.2.0 binary (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.2.0.zip] | [MD5|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.zip.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-bin-5.2.0.zip.asc] | | tapestry-src 5.2.0 binary (tar.bz2) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-src-5.2.0.tar.bz2] | [MD5|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.tar.bz2.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.tar.bz2.asc] | | tapestry-src 5.2.0 binary (tar.gz) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-src-5.2.0.tar.gz] | [MD5|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.tar.gz.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.tar.gz.asc] | | tapestry-src 5.2.0 binary (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-src-5.2.0.zip] | [MD5|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.zip.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-src-5.2.0.zip.asc] |  h2. Stable Releases  Stable releases should be relatively free of critical bugs and are considered the _safest_ option if stability is a requirement.  h1. Tapestry 5.1.0.5 (Stable)  Tapestry 5.1.0.5 is the stable release for [Tapestry 5.1|http://tapestry.apache.org/tapestry5.1/]. Tapestry 5.1 addresses some limitations in 5.0 and improves performance and scalability.  |  | Mirrors | Checksum | Signature | | tapestry-bin 5.1.0.5 binary (tar.bz2) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.1.0.5.tar.bz2] | [MD5|http://www.apache.org/dist/tapestry/tapestry-bin-5.1.0.5.tar.bz2.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-bin-5.1.0.5.tar.bz2.asc] | | tapestry-bin 5.1.0.5 binary (tar.gz) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.1.0.5.tar.gz] | [MD5|http://www.apache.org/dist/tapestry/tapestry-bin-5.1.0.5.tar.gz.md5] | [ASC|http://www.apache.org/dist/tapestry/tapestry-bin-5.1.0.5.tar.gz.asc] | | tapestry-bin 5.1.0.5 binary (zip) | [Download|http://www.apache.org/dyn/closer.cgi/tapestry/tapestry-bin-5.1.0.5.

[CONF] Apache Tapestry > About

2010-09-30 Thread confluence







About
Page edited by Christophe Cordenier


 Changes (3)
 



...
| Andreas Andreou | andyhot | PMC member | {align:right}andy...@apache.org{align} | | | Christophe Cordenier | ccordenier | committer | {align:right}ccorden...@apache.org{align} | | 
| Ben Dotte | bdotte | committer | {align:right}bdo...@apache.org{align} | http://spreadthesource.com | 
| Igor Drobiazko | drobiazko | PMC member | {align:right}drobia...@apache.org{align} | http://tapestry5.de | | Thiago H. de Paula Figueiredo | thiagohp | PMC member | {align:right}thiag...@apache.org{align} | | | Daniel Gredler | gredler | committer | {align:right}gred...@apache.org{align} | | | Daniel Jue | djue | committer | {align:right}d...@apache.org{align} | | 
| Robin Komiwes | robinkomiwes | committer | {align:right}robinkomi...@apache.org{align} | http://spreadthesource.com | 
| Jesse Kuhnert | jkuhnert | PMC member | {align:right}jkuhn...@apache.org{align} | | | Richard Lewis-Shell | rlewisshell | PMC member | {align:right}rlewissh...@apache.org{align} | | 
...
| Robert D. Zeigler | robertdzeigler | committer | {align:right}robertdzeig...@apache.org{align} | |  
 h2. Contributors  
h2. Training and Support  
...

Full Content

Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.

Tapestry is released under the Apache Software Licence 2.0

Releases

Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5.

The people behind Tapestry




 Name 
 ID 
 role 
 email address 
 website 


 Dan Adams 
 dadams 
 committer 
 dad...@apache.org
 
 


 Andreas Andreou 
 andyhot 
 PMC member 
 andy...@apache.org
 
 


 Christophe Cordenier 
 ccordenier 
 committer 
 ccorden...@apache.org
 
 


 Ben Dotte 
 bdotte 
 committer 
 bdo...@apache.org
 
 http://spreadthesource.com 


 Igor Drobiazko 
 drobiazko 
 PMC member 
 drobia...@apache.org
 
 http://tapestry5.de 


 Thiago H. de Paula Figueiredo 
 thiagohp 
 PMC member 
 thiag...@apache.org
 
 


 Daniel Gredler 
 gredler 
 committer 
 gred...@apache.org
 
 


 Daniel Jue 
 djue 
 committer 
 d...@apache.org
 
 


 Robin Komiwes 
 robinkomiwes 
 committer 
 robinkomi...@apache.org
 
 http://spreadthesource.com 


 Jesse Kuhnert 
 jkuhnert 
 PMC member 
 jkuhn...@apache.org
 
 


 Richard Lewis-Shell 
 rlewisshell 
 PMC member 
 rlewissh...@apache.org
 
 


 Kevin Menard 
 kmenard 
 committer 
 kmen...@apache.org
 
 


 Marcus Schulte 
 mschulte 
 PMC member 
 mschu...@apache.org
 
 


 Howard M. Lewis Ship 
 hlship 
 PMC chair 
 hls...@apache.org
 
 http://tapestryjava.blogspot.com 


 David Solis 
 dsolis 
 committer 
 dso...@apache.org
 
 


 Ulrich Stärk 
 uli 
 PMC member 
 u...@apache.org
 
 


 Ted Steen 
 tedst 
 committer 
 te...@apache.org
 
 


 Brian Wallace 
 bwallace 
 committer 
 bwall...@apache.org
 
 


 Robert D. Zeigler 
 robertdzeigler 
 committer 
 robertdzeig...@apache.org
 
 





Training and Support

Training on Tapestry and Support is available directly from the source: the Tapestry project committers:

	Howard Lewis Ship: Provides a multi-day, hands-on workshop on Tapestry, as well as mentoring, support and project work
	Thiago H. de Paula Figueriredo: Provides training and support on Tapestry and related technologies including Spring and Hibernate





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > About

2010-09-30 Thread confluence







About
Page edited by Christophe Cordenier


 Changes (2)
 



...
| Dan Adams | dadams | committer | {align:right}dad...@apache.org{align} | | | Andreas Andreou | andyhot | PMC member | {align:right}andy...@apache.org{align} | | 
| Christophe Cordenier | ccordenier | committer | {align:right}ccorden...@apache.org{align} |  http://spreadthesource.com | 
| Ben Dotte | bdotte | committer | {align:right}bdo...@apache.org{align} | http://spreadthesource.com | 
| Igor Drobiazko | drobiazko | PMC member | {align:right}drobia...@apache.org{align} | http://tapestry5.de | | Thiago H. de Paula Figueiredo | thiagohp | PMC member | {align:right}thiag...@apache.org{align} | | 
...

Full Content

Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.

Tapestry is released under the Apache Software Licence 2.0

Releases

Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5.

The people behind Tapestry




 Name 
 ID 
 role 
 email address 
 website 


 Dan Adams 
 dadams 
 committer 
 dad...@apache.org
 
 


 Andreas Andreou 
 andyhot 
 PMC member 
 andy...@apache.org
 
 


 Christophe Cordenier 
 ccordenier 
 committer 
 ccorden...@apache.org
 
  http://spreadthesource.com 


 Ben Dotte 
 bdotte 
 committer 
 bdo...@apache.org
 
 


 Igor Drobiazko 
 drobiazko 
 PMC member 
 drobia...@apache.org
 
 http://tapestry5.de 


 Thiago H. de Paula Figueiredo 
 thiagohp 
 PMC member 
 thiag...@apache.org
 
 


 Daniel Gredler 
 gredler 
 committer 
 gred...@apache.org
 
 


 Daniel Jue 
 djue 
 committer 
 d...@apache.org
 
 


 Robin Komiwes 
 robinkomiwes 
 committer 
 robinkomi...@apache.org
 
 http://spreadthesource.com 


 Jesse Kuhnert 
 jkuhnert 
 PMC member 
 jkuhn...@apache.org
 
 


 Richard Lewis-Shell 
 rlewisshell 
 PMC member 
 rlewissh...@apache.org
 
 


 Kevin Menard 
 kmenard 
 committer 
 kmen...@apache.org
 
 


 Marcus Schulte 
 mschulte 
 PMC member 
 mschu...@apache.org
 
 


 Howard M. Lewis Ship 
 hlship 
 PMC chair 
 hls...@apache.org
 
 http://tapestryjava.blogspot.com 


 David Solis 
 dsolis 
 committer 
 dso...@apache.org
 
 


 Ulrich Stärk 
 uli 
 PMC member 
 u...@apache.org
 
 


 Ted Steen 
 tedst 
 committer 
 te...@apache.org
 
 


 Brian Wallace 
 bwallace 
 committer 
 bwall...@apache.org
 
 


 Robert D. Zeigler 
 robertdzeigler 
 committer 
 robertdzeig...@apache.org
 
 





Training and Support

Training on Tapestry and Support is available directly from the source: the Tapestry project committers:

	Howard Lewis Ship: Provides a multi-day, hands-on workshop on Tapestry, as well as mentoring, support and project work
	Thiago H. de Paula Figueriredo: Provides training and support on Tapestry and related technologies including Spring and Hibernate





Change Notification Preferences

View Online
|
View Changes









[jira] Created: (TAP5-1286) Remove Maven APT files for documentation that has moved into the Confluence wiki

2010-09-30 Thread Howard M. Lewis Ship (JIRA)
Remove Maven APT files for documentation that has moved into the Confluence wiki


 Key: TAP5-1286
 URL: https://issues.apache.org/jira/browse/TAP5-1286
 Project: Tapestry 5
  Issue Type: Task
  Components: documentation
Affects Versions: 5.2.2
Reporter: Howard M. Lewis Ship


Most of the documentation has been moved into Confluence.  It's time to delete 
the APT and XDOC format documentation.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[CONF] Apache Tapestry > Release Notes 5.2.0

2010-09-30 Thread confluence







Release Notes 5.2.0
Page edited by Howard M. Lewis Ship


 Changes (1)
 



...
read the notes below carefully.  
h3. Live Service Reloading  Tapestry 5.2.0 extends Tapestry's concept of live reloading of Java code into the service layer. In most cases, service implementations of your application will now live reload, seamlessly. See the [FAQ|Frequently Asked Questions] for some additional notes about live reloading.  h3. Pages No Longer Pooled  This is a huge change from Tapestry 5.1 to 5.2; Tapestry no longer pools page instances. It creates *one* instance of each page (per supported locale). Tapestry rewrites your component classes so that all mutable state is stored in a per-thread HashMap. This will greatly reduce Tapestry's memory footprint, especially on heavily loaded sites.  This change makes it easier to share objects between threads, which is problematic when the objects are not thread-safe.  For example:  {newcode:title=Valid Component Code (5.1)}   @Inject   private Locale locale;private final DateFormat format = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);public String getCurrentTimeFormatted()   { return format.format(new Date());   } {newcode}  In the above code, _under 5.1_, the DateFormat object was not shared between threads, as each thread would operate with a different instance of the containing page.  Under 5.2, the final field _will_ be shared across threads, which is problematic as DateFormat is not thread safe. The code should be rewritten as:  {newcode:title=Updated for 5.2}   @Inject   private Locale locale;public String getCurrentTimeFormatted()   { DateFormat format = DateFormat.getDateInstance(DateFormat.MEDIUM, locale);  return format.format(new Date());   } {newcode}  
h3. Service Id Injection  
...

Full Content

Tapestry 5.2.0 represents nearly a year of work past the prior stable release, 5.1.0.5.  For the most part, the upgrade is quite straight forward, but please
read the notes below carefully.

Live Service Reloading

Tapestry 5.2.0 extends Tapestry's concept of live reloading of Java code into the service layer. In most cases, service implementations of your
application will now live reload, seamlessly. See the FAQ for some additional notes about live reloading.

Pages No Longer Pooled

This is a huge change from Tapestry 5.1 to 5.2; Tapestry no longer pools page instances. It creates one instance of each page (per supported
locale). Tapestry rewrites your component classes so that all mutable state is stored in a per-thread HashMap. This will greatly reduce Tapestry's
memory footprint, especially on heavily loaded sites.

This change makes it easier to share objects between threads, which is problematic when the objects are not thread-safe.  For example:

Valid Component Code (5.1)



In the above code, under 5.1, the DateFormat object was not shared between threads, as each thread would operate with
a different instance of the containing page.  Under 5.2, the final field will be shared across threads, which is problematic
as DateFormat is not thread safe. The code should be rewritten as:

Updated for 5.2



Service Id Injection

In prior releases of Tapestry, a constructor parameter of type String was assumed to be the service id.
In the many cases where these was not the case (such as using the @Value or @Symbol annotation), the parameter
needed to be annotated with the @Inject annotation.

  Starting in 5.2.0, this feature is no longer present (this is a non-backwards compatible change, but one that
  affects virtually nobody).  A parameter of type String will be subject to normal
  injection; you will likely want to use @Value or @Symbol with it, or you will see an error that "No service
  implements java.lang.String.".

Igor made a change such that a bare String is injected as the service id in some circumstance; it may be
decorator methods.  This needs to be documented properly.

TranslatorSource

The configuration type for TranslatorSource has changed in an incompatible way: from
an unordered collection to a mapped collection; this is to support overrides of Tapestry's
built-in translators. This will break
existing module classes that contribute to the TranslatorSource service configuration.

Assets

There have been some changes to how assets operate in Tapestry 5.2.

Virtual folders, used to define root packages for component libraries, may no longer
contain slashes. Virtual folders are the pathPrefix property of the LibraryMapping objects
that are contributed to the ComponentClassResolver service.

Each LibraryMapping  is now automatically converted into a matching contribution to   
the ClasspathAssetAliasManager service. Previously a library author was encouraged
to make contributions to bot

[CONF] Apache Tapestry > User Guide

2010-09-30 Thread confluence







User Guide
Page edited by Christophe Cordenier


 Changes (2)
 



...
h2. Integrate Hibernate  
* [Configure Hibernate|Hibernate - Core] * [Develop with Hibernate|Hibernate] 
* [TAPESTRY:Hibernate - Core - Conf] * [TAPESTRY:User Guide] * [TAPESTRY:Statistics] 
 h2. Integrate Spring 
...

Full Content

Hot Features


	Class Reloading



Configuration


	Configuration
	URL rewriting
	HTTPS
	Localization
	Response Compression



Understand


	Page Lifecycle
	Component Rendering
	Request Processing
	Type Coercion



Develop your pages and components

Structure


	Project Layout
	Page Navigation
	Logging
	Component Classes
	Component Templates
	Component Events
	Component Mixins
	Component Parameters



Templating


	Content Type and Markup
	Layout Component
	CSS
	DOM
	Assets
	Property Expressions



Handle persistence


	Persistent Page Data
	Persistent State



Working with IOC


	Injection



_javascript_


	Ajax & _javascript_



Working with Forms


	Input Validation
	BeanEditForm Guide
	Upload files



Test


	Unit testing pages or components
	Integrate with Selenium test tool



Tooling


	Generate your Component Reference
	Service Status



Integrate Hibernate


	Hibernate - Core - Conf
	User Guide
	Statistics



Integrate Spring


	Inject your spring beans inside Tapestry components



Advanced


	Aliases
	Environmental Services





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > User Guide

2010-09-30 Thread confluence







User Guide
Page edited by Christophe Cordenier


 Changes (5)
 



...
 * [Input Validation|Input Validation] 
 h3. Advanced T5 components  
* [BeanEditForm Guide|BeanEditForm Guide] 
* [Upload files|Upload] 
 h3. Test  * [Unit testing pages or components|Unit testing pages or components] 
* [Integrate with Selenium test tool|Test] 
 h3. Tooling  
* [Generate your Component Reference|Component Report] 
* [Service Status|Service Status]  
h2. Integrate Hibernate  * [Configure Hibernate|Hibernate - Core] * [Develop with Hibernate|Hibernate]  h2. Integrate Spring  * [Inject your spring beans inside Tapestry components|Spring]  
h2. Advanced  
...

Full Content

Hot Features


	Class Reloading



Configuration


	Configuration
	URL rewriting
	HTTPS
	Localization
	Response Compression



Understand


	Page Lifecycle
	Component Rendering
	Request Processing
	Type Coercion



Develop your pages and components

Structure


	Project Layout
	Page Navigation
	Logging
	Component Classes
	Component Templates
	Component Events
	Component Mixins
	Component Parameters



Templating


	Content Type and Markup
	Layout Component
	CSS
	DOM
	Assets
	Property Expressions



Handle persistence


	Persistent Page Data
	Persistent State



Working with IOC


	Injection



_javascript_


	Ajax & _javascript_



Working with Forms


	Input Validation
	BeanEditForm Guide
	Upload files



Test


	Unit testing pages or components
	Integrate with Selenium test tool



Tooling


	Generate your Component Reference
	Service Status



Integrate Hibernate


	Configure Hibernate
	Develop with Hibernate



Integrate Spring


	Inject your spring beans inside Tapestry components



Advanced


	Aliases
	Environmental Services





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Release Notes 5.2.0

2010-09-30 Thread confluence







Release Notes 5.2.0
Page  added by Howard M. Lewis Ship

 

 Tapestry 5.2.0 represents nearly a year of work past the prior stable release, 5.1.0.5.  For the most part, the upgrade is quite straight forward, but please
read the notes below carefully.

Service Id Injection

In prior releases of Tapestry, a constructor parameter of type String was assumed to be the service id.
In the many cases where these was not the case (such as using the @Value or @Symbol annotation), the parameter
needed to be annotated with the @Inject annotation.

  Starting in 5.2.0, this feature is no longer present (this is a non-backwards compatible change, but one that
  affects virtually nobody).  A parameter of type String will be subject to normal
  injection; you will likely want to use @Value or @Symbol with it, or you will see an error that "No service
  implements java.lang.String.".

Igor made a change such that a bare String is injected as the service id in some circumstance; it may be
decorator methods.  This needs to be documented properly.

TranslatorSource

The configuration type for TranslatorSource has changed in an incompatible way: from
an unordered collection to a mapped collection; this is to support overrides of Tapestry's
built-in translators. This will break
existing module classes that contribute to the TranslatorSource service configuration.

Assets

There have been some changes to how assets operate in Tapestry 5.2.

Virtual folders, used to define root packages for component libraries, may no longer
contain slashes. Virtual folders are the pathPrefix property of the LibraryMapping objects
that are contributed to the ComponentClassResolver service.

Each LibraryMapping  is now automatically converted into a matching contribution to   
the ClasspathAssetAliasManager service. Previously a library author was encouraged
to make contributions to both services. The path prefix of a LibraryMapping is also
now prohibited from containing the slash character.

It is now quite necessary to configure the application version number: all assets are exposed via
a URL that incorporates the application version number; in previous releases, each library could
configure its own version number. By implication, changing library versions and nothing else will now
require a change to the application version number.

ClassTransformation API changes

The ClassTransformation API, used to implement component meta-programming,
has been rewritten with an eye to making class transformations easier to implement while
removing the dependency on the Javassist library. This is of note only to advanced users who have implemented
ComponentClassTransformWorkers, which operate on
the ClassTransformation API. 

Much of the existing API has been deprecated and some deprecated
methods are now non-functional. The deprecated methods will be removed in Tapestry 5.3.

This represents a shift in how the API operates; previously much of the logic in ComponentClassTransformWorkers
was built in terms of Javassist: adding new bytecode to existing methods. The new API switches away from this, and
now works in terms of adding new fields, initializing those fields using callbacks, providing callbacks for access
to fields, and adding advice to methods.

Template Parser back to SAX

Tapestry no longer uses a StAX parser to parse component templates, it has reverted to using a normal SAX parser. This change
reduces the number of dependencies for Tapestry, and is a stepping stone towards compatibility with
Google App Engine.




Bug


[TAP5-266] - In a conflict between a render phase annotation and the naming convention, the explicit annotation should win

[TAP5-707] - Yellow highlight remains on updated zone if zone is re-updated too quickly

[TAP5-711] - Submit component: using image parameter prevents selected event from being fired

[TAP5-714] - Incorrect encoding of single quotes for Ajax requests

[TAP5-715] - TypeCoercer.explain incorrectly reports the plan to coerce from primitive types to wrapper types

[TAP5-719] - Component LinkSubmit doesn't work

[TAP5-728] - When using the @Validate annotation, spaces around the commas that separate contraints cause runtime exceptions

[TAP5-734] - Tapestry tutorial documentation refers to old archtype command

[TAP5-747] - Property expressions that include method invocations that in turn reference properties result in spurious error about "root"

[TAP5-748] - NPE when defining a component using just t:id and no type or @Component annotation

[TAP5-749] - The FormFragment and LinkSubmit components create a hidden field whose id ends with ":hidden"

[TAP5-750] - Tapestry should not attempt to GZip flash movies (.swf files)

[TAP5-755] - URL rewriting documentation contains an example that won't compile due to lack of a return value

[TAP5-759]

[CONF] Apache Tapestry > Upload

2010-09-30 Thread confluence







Upload
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Hibernate - Core

2010-09-30 Thread confluence







Hibernate - Core
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved



Hibernate - Core - Conf



   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Annotations

2010-09-30 Thread confluence







Annotations
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Spring

2010-09-30 Thread confluence







Spring
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Test

2010-09-30 Thread confluence







Test
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Component Report

2010-09-30 Thread confluence







Component Report
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Hibernate

2010-09-30 Thread confluence







Hibernate
Page moved by Christophe Cordenier






From: 

Apache Tapestry
> Modules


To: 

Apache Tapestry
> User Guide





Children moved



Statistics
Userguide



   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > User Guide

2010-09-30 Thread confluence







User Guide
Page edited by Christophe Cordenier


 Changes (3)
 



h2. Hot Features 
{children}   
* [Class Reloading|Class Reloading]  h2. Configuration  * [Configuration|Configuration] * [URL rewriting|URL rewriting] * [HTTPS|HTTPS] * [Localization|Localization] * [Response Compression|Response Compression]  h2. Understand  * [Page Lifecycle|Page Lifecycle] * [Component Rendering|Component Rendering] * [Request Processing|Request Processing] * [Type Coercion|Type Coercion]  h2. Develop your pages and components  h3. Structure  * [Project Layout|Project Layout] * [Page Navigation|Page Navigation] * [Logging|Logging] * [Component Classes|Component Classes] * [Component Templates|Component Templates] * [Component Events|Component Events] * [Component Mixins|Component Mixins] * [Component Parameters|Component Parameters]  h3. Templating  * [Content Type and Markup|Content Type and Markup] * [Layout Component|Layout Component] * [CSS|CSS] * [DOM|DOM] * [Assets|Assets] * [Property Expressions|Property Expressions]  h3. Handle persistence  * [Persistent Page Data|Persistent Page Data] * [Persistent State|Persistent State]  h3. Working with IOC  * [Injection|Injection]  h3. _javascript_  * [Ajax & _javascript_|Ajax & _javascript_]  h3. Working with Forms  * [Input Validation|Input Validation]  h3. Advanced T5 components  * [BeanEditForm Guide|BeanEditForm Guide]  h3. Test  * [Unit testing pages or components|Unit testing pages or components]  h3. Tooling  * [Service Status|Service Status]  h2. Advanced  * [Aliases|Aliases] * [Environmental Services|Environmental Services] 

Full Content

Hot Features


	Class Reloading



Configuration


	Configuration
	URL rewriting
	HTTPS
	Localization
	Response Compression



Understand


	Page Lifecycle
	Component Rendering
	Request Processing
	Type Coercion



Develop your pages and components

Structure


	Project Layout
	Page Navigation
	Logging
	Component Classes
	Component Templates
	Component Events
	Component Mixins
	Component Parameters



Templating


	Content Type and Markup
	Layout Component
	CSS
	DOM
	Assets
	Property Expressions



Handle persistence


	Persistent Page Data
	Persistent State



Working with IOC


	Injection



_javascript_


	Ajax & _javascript_



Working with Forms


	Input Validation



Advanced T5 components


	BeanEditForm Guide



Test


	Unit testing pages or components



Tooling


	Service Status



Advanced


	Aliases
	Environmental Services





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Release Notes

2010-09-30 Thread confluence







Release Notes
Page edited by Howard M. Lewis Ship


 Changes (1)
 



...
 * [5.2.1|Release Notes 5.2.1] 
* [5.2.0|Release Notes 5.2.0] 

Full Content

Release notes, by release:


	5.2.1
	5.2.0





Change Notification Preferences

View Online
|
View Changes









[CONF] Space Edited: Apache Tapestry (TAPESTRY)

2010-09-30 Thread confluence









Space Edited : Apache Tapestry



Apache Tapestry
edited by Ulrich Stärk
(Sep 30, 2010).







View the home page of the space



Edit the home page of the space





View a summary of the space



Add a new page to the space





 
Name:
Apache Tapestry (TAPESTRY)

Home Page:

Home


Created By:
Ulrich Stärk
(Sep 19, 2006)


Description:
Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.

Visit the official Tapestry website at http://tapestry.apache.org/









[CONF] Apache Tapestry > Home

2010-09-30 Thread confluence







Home
Page moved by Ulrich Stärk






From: 

Apache Tapestry
> Index


To: 

Apache Tapestry






Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Home

2010-09-30 Thread confluence







Home
Page  added by Ulrich Stärk

 

 This is the home page of the Apache Tapestry wiki.

From here you can go to


	Index - the entry page for the auto-generated website
	Documentation - the documentation main page
	Sandbox - a sandbox for developing new ideas and testing things out




   
Change Notification Preferences
   
   View Online
   








[CONF] Apache Tapestry > test2

2010-09-30 Thread confluence







 test2
 Page removed by Ulrich Stärk

 
 
 [  |http://tapestry.apache.org/tapestry5/][  |http://www.apache.org/]

Last Published: 06 May 2009  | Version: 5.1.0.5 

Tapestry 5 Project

	Screencasts
	Tapestry for Struts Developers
	Download
	Release Notes
	Component Reference
	JavaDocs
	Nightly Docs
	Issues
	FAQ
	Refcard
	Howard's Blog



Upgrade Notes

	From Tapestry 5.0
	From Tapestry 4
	Upgrade Notes (5.0)
	Release Notes (5.0)



Tapestry 5 Modules

	tapestry5-annotations
	tapestry-core
	tapestry-hibernate
	tapestry-hibernate-core
	tapestry-ioc
	tapestry-spring
	tapestry-test
	tapestry-upload



Tapestry Tutorials

	Tutorial #1



User Guide

	Ajax & _javascript_
	Aliases
	Assets
	BeanEditForm Guide
	Class Reloading
	Component Classes
	Component Events
	Component Mixins
	Component Parameters
	Component Rendering
	Component Templates
	Configuration
	Content Type and Markup
	CSS
	DOM
	Environmental Services
	HTTPS
	Injection
	Input Validation
	Layout Component
	Localization
	Logging
	Page Lifecycle
	Page Navigation
	Persistent Page Data
	Persistent State
	Property Expressions
	Project Layout
	Request Processing
	Response Compression
	Service Status
	Type Coercion
	Unit testing pages/components
	URL rewriting



Tapestry Cookbook

	Introduction
	Default Parameter
	Exception Reporting
	Supporting Informal Parameters
	Component Libraries
	Switching Cases



Tapestry 5 Maven Support

	quickstart
	tapestry-component-report



Deployment Notes

	Glassfish
	JBoss
	Jetty
	Tomcat
	WebSphere



Resources

	Wiki
	Wiki HowTos



Developer Info

	Environment
	Release Checklist
	Bible



Project Documentation

	Project Information [  |http://maven.apache.org/]



What is Apache Tapestry?
Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.
Tapestry divides a web application into a set of pages, each constructed from components. This provides a consistent structure, allowing the Tapestry framework to assume responsibility for key concerns such as URL construction and dispatch, persistent state storage on the client or on the server, user input validation, localization/internationalization, and exception reporting. Developing Tapestry applications involves creating HTML templates using plain HTML, and combining the templates with small amounts of Java code. In Tapestry, you create your application in terms of objects, and the methods and properties of those objects – and specifically not in terms of URLs and query parameters. Tapestry brings true object oriented development to Java web applications.
Tapestry is specifically designed to make creating new components very easy, as this is a routine approach when building applications. 
Tapestry is architected to scale from tiny, single-page applications all the way up to massive applications consisting of hundreds of individual pages, developed by large, diverse teams. Tapestry easily integrates with any kind of backend, including JEE, Spring and Hibernate.
It's more than what you can do with Tapestry ... it's also how you do it! Tapestry is a vastly productive environment. Java developers love it because they can make Java code changes and see them immediately ... no redeploy, no restart! And it's blazingly fast to boot (even when files change). Designers love it because Tapestry templates are so close to ordinary HTML, without all the cruft and confusion seen in JavaServer Pages. Managers love it because it makes it easy for large teams to work together, and because they know important features (including localization) are baked right in. Once you work in Tapestry there's no going back!
Tapestry is released under the Apache Software Licence 2.0.
New And Of Note

	Tapestry now uses the Blackbird _javascript_ console.
	Tapestry now automatically combines multiple _javascript_ libraries into a single request.
	An Ajax event request may now return a MultiZoneUpdate instance to update multiple zones in the client web browser.
	Client-side numeric validation is now locale-sensitive.
	Some significant performance improvements over Tapestry 5.0.18: the time to initially load a page, and the time to render a page have decreased.
	Tapestry IoC services can now be easily advised as well as decorated (both of these refer to Aspect Oriented Techniques applied to Tapestry IoC services).
	Tapestry Services can now be injected into Spring Beans, when using the Tapestry/Spring integration library.
	Tapestry now compresses responses for clients that support GZIP compression. Context and classpath assets are now handled uniformly: versioned URLs, far-future expiration headers, and GZIP compression where applicable.
	Ordered and mapped configurations can now have overrides.
	Property expressions have been improved: You can now invoke methods with parameter

[CONF] Apache Tapestry > Tapestry Home

2010-09-30 Thread confluence







 Tapestry Home
 Page removed by Ulrich Stärk

 
 
 Quick Links

We have no discernible content to be had yet but hopefully there might be something real here soon?
 








[CONF] Apache Tapestry > Download Tapestry

2010-09-30 Thread confluence







Download Tapestry
Page moved by Ulrich Stärk






From: 

Apache Tapestry
> Navigation


To: 

Apache Tapestry
> Index





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Getting Started

2010-09-30 Thread confluence







Getting Started
Page moved by Ulrich Stärk






From: 

Apache Tapestry
> Navigation


To: 

Apache Tapestry
> Index





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > Sandbox

2010-09-30 Thread confluence







Sandbox
Page moved by Ulrich Stärk






From: 

Apache Tapestry
> Index


To: 

Apache Tapestry






Children moved



Tapestry Reference Guide Plan (Draft)



   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > About

2010-09-30 Thread confluence







About
Page moved by Ulrich Stärk






From: 

Apache Tapestry
> Navigation


To: 

Apache Tapestry
> Index





Children moved






   
Change Notification Preferences
   
   View Online
   









[CONF] Apache Tapestry > About

2010-09-30 Thread confluence







About
Page edited by Ulrich Stärk


 Changes (10)
 



Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server. 
Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server. 
 Tapestry is released under the Apache Software Licence 2.0 
...
h2. Releases  
Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5. 
Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5. 
 
h2. The people behind Tapestry  || Name || ID || role || email address || website || | Dan Adams | dadams | committer | {align:right}dad...@apache.org{align} | | | Andreas Andreou | andyhot | PMC member | {align:right}andy...@apache.org{align} | | | Christophe Cordenier | ccordenier | committer | {align:right}ccorden...@apache.org{align} | | | Ben Dotte | bdotte | committer | {align:right}bdo...@apache.org{align} | | | Igor Drobiazko | drobiazko | PMC member | {align:right}drobia...@apache.org{align} | http://tapestry5.de | | Thiago H. de Paula Figueiredo | thiagohp | PMC member | {align:right}thiag...@apache.org{align} | | | Daniel Gredler | gredler | committer | {align:right}gred...@apache.org{align} | | | Daniel Jue | djue | committer | {align:right}d...@apache.org{align} | | | Robin Komiwes | robinkomiwes | committer | {align:right}robinkomi...@apache.org{align} | | | Jesse Kuhnert | jkuhnert | PMC member | {align:right}jkuhn...@apache.org{align} | | | Richard Lewis-Shell | rlewisshell | PMC member | {align:right}rlewissh...@apache.org{align} | | | Kevin Menard | kmenard | committer | {align:right}kmen...@apache.org{align} | | | Marcus Schulte | mschulte | PMC member | {align:right}mschu...@apache.org{align} | | | Howard M. Lewis Ship | hlship | PMC chair | {align:right}hls...@apache.org{align} | http://tapestryjava.blogspot.com | | David Solis | dsolis | committer | {align:right}dso...@apache.org{align} | | | Ulrich Stärk | uli | PMC member | {align:right}...@apache.org{align} | | | Ted Steen | tedst | committer | {align:right}te...@apache.org{align} | | | Brian Wallace | bwallace | committer | {align:right}bwall...@apache.org{align} | | | Robert D. Zeigler | robertdzeigler | committer | {align:right}robertdzeig...@apache.org{align} | |   h2. Contributors  
h2. Training and Support  
Training on Tapestry and Support is available directly from the source: the Tapestry project committers : 
Training on Tapestry and Support is available directly from the source: the Tapestry project committers: 
* [Howard Lewis Ship|http://howardlewisship.com/training.html] : Provides a multi-day, hands-on workshop on Tapestry, as well as   mentoring, support and project work 
*  [Thiago H. de Paula Figueriredo|http://www.arsmachina.com.br/services] : Provides training and support on Tapestry and related technologies including   Spring and Hibernate  
* [Thiago H. de Paula Figueriredo|http://www.arsmachina.com.br/services]: Provides training and support on Tapestry and related technologies including Spring and Hibernate 

Full Content

Apache Tapestry is an open-source framework for creating dynamic, robust, highly scalable web applications in Java. Tapestry complements and builds upon the standard Java Servlet API, and so it works in any servlet container or application server.

Tapestry is released under the Apache Software Licence 2.0

Releases

Tapestry has a long history, with the oldest code dating back to January 2000. That means a lot of releases. At this time, Tapestry releases 3 and 4 are no longer being developed; developer effort is focused on Tapestry 5.

The people behind Tapestry




 Name 
 ID 
 role 
 email address 
 website 


 Dan Adams 
 dadams 
 committer 
 dad...@apache.org
 
 


 Andreas Andreou 
 andyhot 
 PMC member 
 andy...@apache.org
 
 


 Christophe Cordenier 
 ccordenier 
 committer 
 ccorden...@apache.org
 
 


 Ben Dotte 
 bdotte 
 committer 
 bdo...@apache.org
 
 


 Igor Dro

[CONF] Apache Tapestry > Default Parameter

2010-09-30 Thread confluence







Default Parameter
Page edited by Ulrich Stärk


 Changes (4)
 



...
Let's say you have a component, {{OutputGadget}}, whose job is to output some information about an entity type, {{Gadget}}.  
{newcode:JAVA} 
public class OutputGadget { 
...
  } } 
{newcode} 
 This can now be used as {{}}, assuming {{currentGadget}} is a property of the container. 
...
Because this is such a common idiom, it has been made simpler for you. Rather than writing the code above, you can just use the autoconnect attribute of the Parameter annotation. This, effectively, creates the {{defaultGadget()}} method for you. In this case the code of component {{OutputGadget}} can be reduced to:  
{newcode:JAVA} 
public class OutputGadget { 
...
 } 
{newcode} 

Full Content

Default Parameter

Many of the components provided with Tapestry share a common behavior: if the component's id matches a property of the container, then some parameter of the component (usually value) defaults to that property.

This is desirable, in terms of not having to specify the component's id and then specify the same value as some other parameter.

Making this work involves two concepts: default parameter methods (methods that can compute a default value for a parameter), and a service, ComponentDefaultProvider.

Let's say you have a component, OutputGadget, whose job is to output some information about an entity type, Gadget.



public class OutputGadget
{
  @Property
  @Parameter(required=true)
  private Gadget gadget;

  @Inject
  private ComponentDefaultProvider defaultProvider;

  @Inject
  private ComponentResources resources;

  Binding defaultGadget()
  {
return defaultProvider.defaultBinding("gadget", resources);
  }
}



This can now be used as , assuming currentGadget is a property of the container.

If there is no matching property, then the defaultGadget() method will return null, and a runtime exception will be thrown because the gadget parameter is required and not bound.

The principal attribute on the Parameter annotation is not needed in the specific case; in some cases, a default for some other parameter may be based on the bound type of another parameter, the principal attribute forces the parameter to be resolved first. In many Tapestry form components, the value parameter is principal, so that the validate and translate parameters can computer defaults, based on the type and annotations bound to the value parameter.

autoconnect attribute

Because this is such a common idiom, it has been made simpler for you. Rather than writing the code above, you can just use the autoconnect attribute of the Parameter annotation. This, effectively, creates the defaultGadget() method for you. In this case the code of component OutputGadget can be reduced to:



public class OutputGadget
{
  @Property
  @Parameter(required=true, autoconnect = true)
  private Gadget gadget;

}





Change Notification Preferences

View Online
|
View Changes









[CONF] Apache Tapestry > Default Parameter

2010-09-30 Thread confluence







Default Parameter
Page edited by Ulrich Stärk


 Changes (4)
 



...
Let's say you have a component, {{OutputGadget}}, whose job is to output some information about an entity type, {{Gadget}}.  
{newcode:JAVA} 
public class OutputGadget { 
...
  } } 
{newcode} 
 This can now be used as {{}}, assuming {{currentGadget}} is a property of the container. 
...
Because this is such a common idiom, it has been made simpler for you. Rather than writing the code above, you can just use the autoconnect attribute of the Parameter annotation. This, effectively, creates the {{defaultGadget()}} method for you. In this case the code of component {{OutputGadget}} can be reduced to:  
{newcode:JAVA} 
public class OutputGadget { 
...
 } 
{newcode} 

Full Content

Default Parameter

Many of the components provided with Tapestry share a common behavior: if the component's id matches a property of the container, then some parameter of the component (usually value) defaults to that property.

This is desirable, in terms of not having to specify the component's id and then specify the same value as some other parameter.

Making this work involves two concepts: default parameter methods (methods that can compute a default value for a parameter), and a service, ComponentDefaultProvider.

Let's say you have a component, OutputGadget, whose job is to output some information about an entity type, Gadget.





This can now be used as , assuming currentGadget is a property of the container.

If there is no matching property, then the defaultGadget() method will return null, and a runtime exception will be thrown because the gadget parameter is required and not bound.

The principal attribute on the Parameter annotation is not needed in the specific case; in some cases, a default for some other parameter may be based on the bound type of another parameter, the principal attribute forces the parameter to be resolved first. In many Tapestry form components, the value parameter is principal, so that the validate and translate parameters can computer defaults, based on the type and annotations bound to the value parameter.

autoconnect attribute

Because this is such a common idiom, it has been made simpler for you. Rather than writing the code above, you can just use the autoconnect attribute of the Parameter annotation. This, effectively, creates the defaultGadget() method for you. In this case the code of component OutputGadget can be reduced to:







Change Notification Preferences

View Online
|
View Changes