Соглашение важнее конфигурации

Гобелен Apache следует Convention over Configurationво всех аспектах программирования. У каждой функции фреймворка есть разумное соглашение по умолчанию.

Например, как мы узнали в главе «Макет проекта», все страницы необходимо разместить в /src/main/java/«package_path»/pages/ папка будет считаться страницами гобелена.

С другой стороны, нет необходимости настраивать конкретный класс Java как страницы гобелена. Достаточно разместить класс в заранее определенном месте. В некоторых случаях странно следовать соглашению по умолчанию для 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.