|
From: <tri...@us...> - 2007-12-19 13:32:48
|
Revision: 211
http://equanda.svn.sourceforge.net/equanda/?rev=211&view=rev
Author: triathlon98
Date: 2007-12-19 05:32:46 -0800 (Wed, 19 Dec 2007)
Log Message:
-----------
doc improvements
Modified Paths:
--------------
trunk/src/site/wiki/index.wiki
Modified: trunk/src/site/wiki/index.wiki
===================================================================
--- trunk/src/site/wiki/index.wiki 2007-12-19 10:04:08 UTC (rev 210)
+++ trunk/src/site/wiki/index.wiki 2007-12-19 13:32:46 UTC (rev 211)
@@ -1,5 +1,5 @@
----
-*warning* this is incomplete documentation. We are working hard to improve both the feature set and the documentation. So do have a browse around, but definitely come back later to see how things evolve.
+*warning* this documentation is still somewhat incomplete. We are working hard to improve both the feature set and the documentation. So do have a browse around, but definitely come back later to see how things evolve.
----
@@ -48,81 +48,75 @@
h3. EJB3 persistence layer
-- The data model supports the following features
--- (multiple) inheritance
--- declarative constraints
--- programmed constraints
--- int, double and string fields
--- fields with multiple values
--- hard linked records (normal db links)
--- soft linked records (using an ordinary field reference, the linked record may not exist)
--- field values can be limited (choices) either statically (xml description) or programmatically (validation)
--- for removing records [cascade] can be used
--- field templates can be used
+Object model description options
+- (multiple) inheritance
+- declarative constraints
+- programmed constraints
+- int, double, string, blob, clob fields
+- fields with multiple values
+- hard linked records (normal db links)
+- soft linked records (using an ordinary field reference, the linked record may not exist)
+- field values can be limited (choices) either statically (xml description) or programmatically (validation)
+- for removing records cascade-delete, cascade-keep (don't delete when there are references to the record) or normal null all references behaviour can be used
+- field templates can be used
+Implementation
+- powerful proxies are used which make objects available remotely. Similar to detached objects, but completely transparent (no need to instantiate)
+- lazy collection instantiation, when a selector contains lots of objects, the results are still batched (and counting works too)
+- inheritance sensitive selectors
+- filters and sort orders can be defined on the selectors
+
+As a bonus, when your client only uses the proxies, it is straightforward to replace the backend (this way the data could for example be based on webservices instead of EJB3 entity beans).
+
h3. tapestry5 user interface
-- The user interface, out of the box, contains the following features
--- thin client, all browsers
--- no need for ActiveX activation of client side java
--- ajax for responsive, powerful user interface
--- easy/efficient keyboard [navigation]
--- powerful automatic cross linking of records
--- setting links using [suggest] values
--- fields can be distributed over (tab) pages with some fields be visible on all tabs
--- fields can be grouped
--- powerful user management with customization of rights
--- possible choice of visible fields per user
--- possible printout (pdf doc) of the result of selectors, with user configurable fields (screen and pdf), and column width (pdf)
--- inclusion of reporting in the user interface
--- generated components can be used to build custom pages
--- layout can be modified using css.
+- thin client, all browsers, no need for ActiveX activation of client side java
+- easy/efficient keyboard navigation
+- powerful automatic cross linking of records
+- fields can be distributed over (tab) pages with some fields be visible on all tabs
+- fields can be grouped
+- setting links using suggest values (*)
+- powerful user management with customization of rights (*)
+- possible choice of visible fields per user (*)
+- possible printout (pdf doc) of the result of selectors, with user configurable fields (screen and pdf), and column width (pdf) (*)
+- inclusion of reporting in the user interface (*)
+- generated components can be used to build custom pages
+- highly customizeably, layout components define how things are combined on screen
+- possible to change the components used for a specific type or field or on a case by case basis
+(*) ^Items marked like this are available in the old tapestry4 version and will be available again for the tapestry5 version.^
+
h3. user management support
+equanda uses an internal mechanism to configure the very granular access rights for the user interface. This is based on user information in the database. This module allows you to generate a login module which prevents duplication of user information between the application and the JAAS module.
+
h3. import data
-h3. import/export tool
+It is possible to generate code which can be used to import data from a CVS-like text file.
-h3. object model (domain model) documentation
+h3. ddltool
-{private}
-h3. tapestry4 user interface
-{private}
+This allows generation of a tool which handles database update (and optionally partial cleanup).
-- Powerful support for import and export of data using text files.
+h3. object model (domain model) documentation
-- [lazy] collections used to fetch selectors results
+Documentation for the object model can be generated. This includes html documentation, a Freemind mindmap and owl.
-- tools provided for import, export, remote printing of reports, database update (and partial cleanup)
-
-- utility classes for
--- ean128 barcode support
--- more efficient xml parsing, based on Javolution parser
--- FScript extensions
--- some useful Swing classes
-
h2. equanda modules
equanda contains several modules.
-- client
-- server
-- generate
-- maven-plugin
-- t4-template
-- t5gui
-- tapestry4
-- tapestry5
-- tool
-- util
+- [client|equanda-client/index.html] : client side code. This module needs to be included by the client components for equanda applications.
+- [server|equanda-server/index.html] : server side code which is needed for the equanda framework
+- [generate|equanda-generate/index.html] : module which handles the code generation, processing the object model and contains the templates.
+- [maven-plugin|equanda-maven-plugin/index.html] : maven plugin which allows the generation to be done as part of a maven build cycle, but also for editing the translations and doing a database update
+- [tapestry5|equanda-tapestry5/index.html] : collection of tapestry5 components which can also be used outside of equanda applications
+- [t5gui|equanda-t5gui/index.html] : collection of tapestry5 components which are specific for equanda generated applications
+- [tool|equanda-tool/index.html] : tool provided for import, export, remote printing of reports
+- [util|equanda-util/index.html] : contains several utility classes containing (amongst others) ean128 barcode support, [FScript|http://fscript.sf.net/] extensions, useful Swing classes
- test : this module is used to do integration testing. It is only included when the "-Dfulltest" switch is used in maven.
+- tapestry4, t4-template : modules for generated tapestry4 user interface, this is no longer really supported
-The [core] module is about automatic generation of a large part of an application (both user interface and data layer) from the object model.
-It can be extended to generate even more (like web services layer etc). There are provisions for the inclusion of reporting, hooks for the tools etc.
-The [util] module provides many additional services. For example for ean128 barcodes, FScript extensions etc.
-
-
h2. Technology
- The generated program uses EJB3 for the entity and session beans
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|