README-CUSTOM-COMPONENT-VIEWS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Tapestry looks in several locations for custom components.  Locations include WEB-INF and WEB-INF/<servlet-name>.
We are in the latter, where <servlet-name> is jumpstart-max.  It's a convenient place to keep the components together.
It is possible to use a folder called components but it's a little tricky to achieve.  
See http://wiki.apache.org/tapestry/PagesAndComponentsInWEB-INF for details.

Some components specify their output with html:

	eg. Border.html, ShowError.html.

Most components have a .jwc file to specify their parameters:

	eg. Border.jwc, DateMidnightPicker.jwc, ShowError.jwc
	
Some components specify an associated java class in their jwc:

	eg. Border.jwc specifies jumpstart.max.web.components.Border

Some components have .java but no .jwc or .html:

	eg. InsertDateTime.java, which writes very short pieces of html

How does Tapestry know where to find .java components like InsertDateTime that have no .jwc?
The .application file tells it their base package name:

	<meta key="org.apache.tapestry.component-class-packages" value="jumpstart.max.web.components"/>

See jumpstart-max.application in WEB-INF.

Next
~~~~

README-CUSTOM-COMPONENT-CONTROLLERS.  In Eclipse you can find it easily with Ctrl-Shift-R (or Cmd-Shift-R on the Mac).
