Соглашение важнее конфигурации
Гобелен 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.