Apache Tapestry - Layout del progetto
Ecco il layout del codice sorgente creato da Maven Quickstart CLI. Inoltre, questo è il layout suggerito di un'applicazione Tapestry standard.
├── 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
Il layout predefinito è organizzato come il WAR Internal File Format. L'uso del formato WAR aiuta a eseguire l'applicazione senza impacchettare e distribuire. Questo layout è solo un suggerimento, ma l'applicazione può essere organizzata in qualsiasi formato, se viene impacchettata in un formato WAR appropriato durante la distribuzione.
Il codice sorgente può essere suddiviso nelle seguenti quattro sezioni principali.
Java Code - Tutti i codici sorgente Java sono posti sotto /src/main/javacartella. Le classi di pagine di Tapestry vengono collocate nella cartella "Pages" e le classi dei componenti di Tapestry sono collocate nella cartella dei componenti. Le classi di servizi di Tapestry sono collocate nella cartella dei servizi.
ClassPath Resources- In Tapestry, la maggior parte delle classi ha risorse associate (modello XML, file JavaScript, ecc.). Queste risorse sono collocate sotto/src/main/resourcescartella. Le classi di pagine di Tapestry hanno le risorse associate nella cartella "Pagine" e le classi dei componenti di Tapestry hanno le risorse associate nella cartella Componenti. Queste risorse sono contenute inWEB-INF/classes cartella del WAR.
Context Resources - Sono risorse statiche di un'applicazione web come immagini, fogli di stile e libreria JavaScript / Modules. They are usually placed under the /src/main/webapp cartella e vengono chiamati Context Resources. Inoltre, il file di descrizione dell'applicazione Web (di Java Servlet), web.xml è posizionato sottoWEB-INF cartella delle risorse di contesto.
Testing Code - Questi sono file opzionali utilizzati per testare l'applicazione e posti sotto il file src/test/java e src/test/Cartelle delle risorse. Non sono impacchettati in WAR.