Aranea is a Java Hierarchical Model-View-Controller Web Framework that provides a common simple approach to building the web application components, reusing custom or general GUI logic and extending the framework. The framework is assembled from a number of independent modules with well-defined responsibilities and thus can be easily reconfigured to perform new and unexpected tasks. The controller is separated into a hierarchy of components that can react to user or system events. The framework is completely view agnostic, but provides a thorough library of JSP custom tags that target building GUIs without writing a line of HTML. All components and modules are simple Plain Old Java classes without any XML mappings and thus usual Object-Oriented design techniques can be applied. Aranea manages the component field persistence automatically and inherently supports nested state.
Aranea is logically separated in the following modules:
org.araneaframework
and org.araneaframework.core
and is packaged into aranea-core.jar
.org.araneaframework.framework
and its subpackages and is packaged into aranea-framework.jar
.org.araneaframework.http
and its subpackages and is packaged into aranea-servlet.jar
.org.araneaframework.integration.spring
and its subpackages and is packaged into aranea-spring.jar
.org.araneaframework.uilib
and its subpackages and is packaged into aranea-uilib.jar
.org.araneaframework.jsp
and its subpackages and is packaged into aranea-jsp.jar
.org.araneaframework.backend
and its subpackages and is packaged into aranea-backend.jar
.These modules depend on each other as follows:
The rest of this manual is organized as follows:
This chapter describes the core Aranea abstractions in detail generally not necessary to just develop application code so it can be skipped during the first reading. It is quite dry on the examples, but its understanding is crucial to develop Aranea extensions. To get a quick understanding of how to program with widgets read Section 2.7, “Application Widgets”.
This chapter describes how to assemble and configure both applications and the Aranea framework itself. It also describes in detail main components of the Aranea framework. The most interesting part for a beginner would be Section 3.2, “Application Configuration”.
This chapter describes how Aranea manages reading data from request, validating and converting it to the model objects.
This chapter describes how to make pageable, filterable and orderable tables in Aranea.
This chapter looks at various other Uilib widgets and explains their use.
This chapter describes Aranea integration hooks for third-party toolkits and frameworks. At the moment it includes Spring.
This chapter describes the Javascript libraries that Aranea uses and the Javascript API that Aranea provides.