ZKBASEThis project serves as example code base using following J2EE open-source frameworks and tools:
ZK Framework Hibernate Spring Spring Security (Acegi) Maven OverviewThe main focus lies on the integration of the ZK front-end framework. However, as the backend is also realized further frameworks are considerd. For instance the persistance framework Hibernate is used for mapping the domain objects to a relational database (tested on MySQL, Oracle and HSQL). JPA is used to generalize the interface to the Hibernate layer. Spring comes into play for wiring the various layers together as well as for providing the desired level of security and user authentication. Maven serves as building tool allowing a smooth build process as well as the execution of the application.
The ApplicationThe purpose of the application is to show the functioning of common features web applications nowadays have implemented. Within this scope user authentication, securing of content, sorted lists, pagination, and so forth can be found.
Following list demonstrates the basic workflow:
On the start page the "Init"-button will set up the user-database with one admin account and 100 user accounts. It is possible to log in using either the admin account or one of the 100 user accounts. Dependent of the roles (ROLE_ADMIN, ROLE_USER,..) the access rights are restricted for certain areas. For instance, a user can only alter his own profile whereas the admin can alter all profiles in the system.
The Features...regarding ZK
MVC based on ZkToDo2 listbox including pagination, sorting menu
dependency injections auto-wiring security
annotation driven transactions
embedded Jetty web server (target: jetty:run)