Apache Tapestry - Макет проекта
Вот макет исходного кода, созданного Maven Quickstart CLI. Кроме того, это предлагаемый макет стандартного приложения Tapestry.
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── MyFirstApplication
│ │ │ ├── components
│ │ │ ├── data
│ │ │ ├── entities
│ │ │ ├── pages
│ │ │ └── services
│ │ ├── resources
│ │ │ ├── com
│ │ │ │ └── example
│ │ │ │ └── MyFirstApplication
│ │ │ │ ├── components
│ │ │ │ ├── logback.xml
│ │ │ │ └── pages
│ │ │ │ └── Index.properties
│ │ │ ├── hibernate.cfg.xml
│ │ │ └── log4j.properties
│ │ └── webapp
│ │ ├── favicon.ico
│ │ ├── images
│ │ │ └── tapestry.png
│ │ ├── mybootstrap
│ │ │ ├── css
│ │ │ │ ├── bootstrap.css
│ │ │ │ └── bootstrap-theme.css
│ │ │ ├── fonts
│ ├── glyphicons-halflings-regular.eot
│ │ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ └── glyphicons-halflings-regular.woff2
│ │ │ └── js
│ │ └── WEB-INF
│ │ ├── app.properties
│ │ └── web.xml
│ ├── site
│ │ ├── apt
│ │ │ └── index.apt
│ │ └── site.xml
│ └── test
│ ├── conf
│ │ ├── testng.xml
│ │ └── webdefault.xml
│ ├── java
│ │ └── PLACEHOLDER
│ └── resources
│ └── PLACEHOLDER
└── target
├── classes
│ ├── com
│ │ └── example
│ │ └── MyFirstApplication
│ │ ├── components
│ │ ├── data
│ │ ├── entities
│ │ ├── logback.xml
│ │ ├── pages
│ │ │ └── Index.properties
│ │ └── services
│ ├── hibernate.cfg.xml
│ └── log4j.properties
├── m2e-wtp
│ └── web-resources
│ └── META-INF
│ ├── MANIFEST.MF
│ └── maven
│ └── com.example
│ └──MyFirstApplication
│ ├── pom.properties
│ └── pom.xml
├── test-classes
│ └── PLACEHOLDER
└── work
├── jsp
├── sampleapp.properties
└── sampleapp.script
Макет по умолчанию устроен как WAR Internal File Format. Использование формата WAR помогает запускать приложение без упаковки и развертывания. Этот макет является всего лишь предложением, но приложение может быть оформлено в любом формате, если оно упаковано в правильный формат WAR при развертывании.
Исходный код можно разделить на следующие четыре основных раздела.
Java Code - Все исходные коды java размещены под /src/main/javaпапка. Классы страниц Tapestry помещаются в папку «Pages», а классы компонентов Tapestry помещаются в папку компонентов. Классы обслуживания гобелена помещаются в папку услуг.
ClassPath Resources- В Tapestry большинство классов имеют связанные ресурсы (шаблон XML, файлы JavaScript и т. Д.). Эти ресурсы помещены в/src/main/resourcesпапка. Классы страниц Tapestry имеют связанные ресурсы в папке «Pages», а классы компонентов Tapestry имеют связанные ресурсы в папке Components. Эти ресурсы упакованы вWEB-INF/classes папка WAR.
Context Resources - Это статические ресурсы веб-приложения, такие как изображения, таблица стилей и библиотека JavaScript. / Modules. They are usually placed under the /src/main/webapp папка и они называются Context Resources. Кроме того, файл описания веб-приложения (сервлета Java) web.xml помещается подWEB-INF папка контекстных ресурсов.
Testing Code - Это необязательные файлы, используемые для тестирования приложения и размещенные под src/test/java а также src/test/Папки ресурсов. Они не упакованы в WAR.