-
Notifications
You must be signed in to change notification settings - Fork 63
architecture
The application's backend is developed using Spring and JPA/Hibernate. Data is persisted in an in-memory HSQL database to make testing/running the application relatively easy.
The module named todolist-core
is common to all web layers and is a good use case to see how web frameworks integrate with Spring.
Common web utilities (JSTL tags, Filters, Backing beans, etc) are packaged in a separate common web module named todolist-web-common
.
For each web framework, a separate war module is created to implement ONLY the web layer of the application.
View technology may vary for each framework. Here, JSP views are (re)used for most of current implementations. Thymeleaf is also planned to be used as alternative to JSPs.
URLs under /user/*
and /todos/*
must be accessible to only logged users.
This requirement should be implemented using a servlet filter or equivalent (Struts interceptor, Spring MVC interceptor, etc)
Note that security is not addressed since not all frameworks provide security support.
Form validation should be done using Bean Validation API (JSR303). Form backing beans are already defined with validation constraints in the todolist-web-common
module.
All you have to do is to integrate the validation logic with the framework in use.
Finally, the static html template located in src/site/template
can be used as a starting point to implement the application with a new framework.