อนุสัญญาเหนือการกำหนดค่า
Apache Tapestry ดังต่อไปนี้ Convention over Configurationในทุกแง่มุมของการเขียนโปรแกรม ทุกคุณลักษณะของกรอบงานมีหลักการเริ่มต้นที่สมเหตุสมผล
ตัวอย่างเช่นตามที่เราเรียนรู้ในบทเค้าโครงโครงการต้องวางหน้าทั้งหมดไว้ในไฟล์ /src/main/java/«package_path»/pages/ โฟลเดอร์ที่จะถือว่าเป็น Tapestry Pages
ในอีกแง่หนึ่งไม่จำเป็นต้องกำหนดค่า Java Class โดยเฉพาะเป็น Tapestry Pages ก็เพียงพอที่จะวางชั้นเรียนในตำแหน่งที่กำหนดไว้ล่วงหน้า ในบางกรณีเป็นเรื่องแปลกที่จะปฏิบัติตามหลักการเริ่มต้นของ Tapestry
ตัวอย่างเช่นส่วนประกอบ Tapestry สามารถมีวิธีการ setupRenderซึ่งจะเริ่มทำงานเมื่อเริ่มขั้นตอนการแสดงผล นักพัฒนาอาจต้องการใช้ชื่อที่เปิดขึ้นเองพูดinitializeValue. ในสถานการณ์นี้ Tapestry ให้Annotation เพื่อลบล้างข้อตกลงตามที่แสดงในบล็อกโค้ดต่อไปนี้
void setupRender() {
// initialize component
}
@SetupRender
void initializeValue() {
// initialize component
}
การเขียนโปรแกรมทั้งสองวิธีใช้ได้ใน Tapestry กล่าวโดยย่อคือการกำหนดค่าเริ่มต้นของ Tapestry นั้นค่อนข้างน้อย เพียงApache Tapestry Filter (Java Servlet Filter) จำเป็นต้องกำหนดค่าใน“ Web.xml” เพื่อให้แอปพลิเคชันทำงานได้อย่างเหมาะสม
Tapestry เป็นอีกวิธีหนึ่งในการกำหนดค่าแอปพลิเคชันและเรียกว่าเป็นไฟล์ AppModule.java.