Also, it is often easier to start developing a page from its HTML mock up, discussed and agreed upon with the customer. In these cases, Tapestry's ability to make its instrumentation invisible becomes very important. Change the TextField declaration to look like this:
Here we have hidden both the type of the Tapestry component and its binding inside a standard HTML control. If you run the application now, it should work and look exactly as before, but if you preview the page template in a web browser, you will be able to see a proper text field, not an empty space in place of it. Chapter 3 [ 69 ] Try to do a similar cosmetic upgrade for the PageLink component: Go to Another page Now it will look like a link not only on the running page, but on the previewed page template too. Finally, we can go even further and move most of the components' configuration to the page class. Add the following two private fields with annotations to the Start page class: @Component(parameters = {"page=Another"}) private PageLink theLink; @Component(parameters = {"value=message"}) private TextField theTextBox; Then change the way these two components are placed on the page template: Go to Another page
Note that the values used for t:id attributes in the page template should be the names of the private properties defined in the page class.