Expresso

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » J2EE » Expresso 
Expresso
License:Apache Software License
URL:http://www.jcorporate.com/expresso.html
Description:Expresso is an open standards-based, enterprise-strength J2EE architectural framework
Package NameComment
com.jcorporate
com.jcorporate.expresso.coreThe sub-packages to this package define the core objects of Expresso, where items such as DBObject are defined. Standard objects that *use* these definitions (such as the security dbobjects) are in the services package. The only object defined in this package itself is the Schema object for Expresso, used by DBTool and DBCreate to initialize Expresso's database.
com.jcorporate.expresso.core.cache

Package containing all of the objects for Expresso's Cache Manager, a general-purpose system for in-memory caching.

The caching system has many features such as built in Memory limitation, named caches, ordered and undered caches , and many other features. It is designed to be highly efficient for quick retrieval of Objects without requiring a network round trip to a database.

 

com.jcorporate.expresso.core.cache.tests
com.jcorporate.expresso.core.controller

This package contains the object defining the "Controller" object, an important component of Expresso that should be used to encapsulate all user interaction sequences.

Controllers are the guts Expresso's logic system. You derive your own controller class from DBController to automatically get features such as built in per-state security.

 

com.jcorporate.expresso.core.controller.sessionThis package contains the interface PeristantSession and a number of implementations of this interface. PersistentSession is used by Controller objects to store information, either for a single sequence of operations or more permanantly. In a servlet environment, the HttpServletRequest attributes are used for temporary storage, and the HttpSession object for more Persistent storage.
com.jcorporate.expresso.core.controller.tests
com.jcorporate.expresso.core.controller.validation
com.jcorporate.expresso.core.dataobjects

The DataObjects package contains a set of interfaces and base classes that give the ability to provide a unified object approach to various data sources. It is roughly based off of the older DBObject which was less flexible, only allowed one dbobject per table, and was only JDBC capable.

com.jcorporate.expresso.core.dataobjects.jdbc JDBC Package Description

This package contains implementations and helper classes of DataObjects that pertain to JDBC data sources only.

NOTE: The interfaces in this package are of beta quality. They are still being tested and worked on, and thus may chance in the near future.

com.jcorporate.expresso.core.dataobjects.jdbc.tests
com.jcorporate.expresso.core.dataobjects.test
com.jcorporate.expresso.core.db Database Java Objects for establishing database connections and connection pooling Also contains all Exceptions used for Data Access while working with Expresso.
com.jcorporate.expresso.core.db.config Package Contents

This package contains a public preview of future configuration code. In the near future, all database configurations except for user-specific information will be stored here.

The classes themselves are mainly digester related classes, while the .xml files are the actual configuration files for various databases.

 

com.jcorporate.expresso.core.db.datasource DataSource components for establishing database connections and connection pooling via JNDI Also contains all Exceptions used for Data Source while working with Expresso.
com.jcorporate.expresso.core.db.exceptionSpecific database exceptions, subclassing DBException
com.jcorporate.expresso.core.db.tests
com.jcorporate.expresso.core.dbobj

Ancestor objects for all Database Objects and Schemas.

Database Objects are probably the single most used part of Expresso. They provide Object Relational mapping capabilities to a database table. They also give you the ability to embed capabilities such as validation logic, master-detail relations, and more.

 

com.jcorporate.expresso.core.dbobj.tests
com.jcorporate.expresso.core.i18n This package contains classes used for Expresso's I18N capabilities. Because Expresso is designed to provide pluggable components, we associate a specific MessagesBundle with each Schema, rather than a single MessagesBundle.properties for the whole application
com.jcorporate.expresso.core.job

Classes that define "Jobs" or server-side tasks that are run asynchronously to the user's web browser.

They are usually run by the JobHandler, of which you can have more than one JobHandler running to get greater job throughput.

com.jcorporate.expresso.core.jsdkapiThe different versions of the Servlet API have different methods for handling includes, forwards, session attributes, etc. The objects in this package allow Expresso to use "Generic" objects for these functions, and dynamically loaded classes specific to each API version are used to perform the appropriate operation.
com.jcorporate.expresso.core.loggingThis package contains the objects that form Expresso's interface to the log4j logging system, including a custom appender to write to Expresso database-based log.
com.jcorporate.expresso.core.logging.tests
com.jcorporate.expresso.core.miscMiscellaneous objects for file manipulation, running OS processes, etc
com.jcorporate.expresso.core.misc.tests
com.jcorporate.expresso.core.misc.uploadClasses to assist in parsing multi-part upload requests
com.jcorporate.expresso.core.registry
com.jcorporate.expresso.core.securityThis package contains Expresso's security system, switchable from "weak" security (e.g. minimal-strength encryption) to "strong" security. It also includes filters for field data used in DBObjects to prevent embedded code and other forms of attack on the security of the system.
com.jcorporate.expresso.core.security.filters Contains the mechanisms to filter malicious control characters from strings before being sent to a browser.
com.jcorporate.expresso.core.security.strongencryption Package for containing Hashing and Symmetric encryption. Requires a JCE implementation (preferably BouncyCastle) to be installed in the system.
com.jcorporate.expresso.core.security.tests
com.jcorporate.expresso.core.security.weakencryption Package for containing Hashing and Symmetric encryption. Doesn't use strong encryption if a JCE provider isn't present. [Uses simple XOR obfuscation]
com.jcorporate.expresso.core.servlet

Base classes for all JavaCorporate servlets.

Straight servlets by and large are no longer used within Expresso as such. We strongly encourage you to create your web-application based upon Expresso's Controller objects rather than servlets since they give you basic flow control, subdivision of tasks, and built-in per-state security.

com.jcorporate.expresso.core.servlet.viewhandlerServlets to render the View. Generally, these are not used in favor of Expresso's (Struts) View Model.
com.jcorporate.expresso.core.utilityPackage to contain all of the 'utility' programs in Expresso - these are applications that run from the command line (e.g. not servlets)
com.jcorporate.expresso.ext.controller

Controllers that are optional to Expresso. Mostly for administration.

com.jcorporate.expresso.ext.dbobjContains database object definitions for download files functionality and self-Registered User functionality.
com.jcorporate.expresso.ext.dbobj.regobjExample database objects for use in the built in registration system
com.jcorporate.expresso.ext.job Jobs that are optional to the Expresso system.
com.jcorporate.expresso.ext.ldapThis package contains the LDAP-aware implementation of the UserInfo interface. The JNDI and LDAP libraries are required to be on your system in order to compile and use this object.
com.jcorporate.expresso.ext.regexp Deprecated Regular Expression Package. Use the Jakarta ORO package instead now.
com.jcorporate.expresso.ext.reportContains an example of a ReportPage object to report statistics on downloaded files.
com.jcorporate.expresso.ext.struts.taglib This package contains tag libraries that correspond to the Struts Library tags. They have been specifically designed to blend in with Expresso's controller features, and thus are ControllerResponse aware.
com.jcorporate.expresso.ext.struts.taglib.bean Expresso extensions of Struts bean tags.
com.jcorporate.expresso.ext.struts.taglib.html Expresso extensions of Struts html tags.
com.jcorporate.expresso.ext.struts.taglib.logic Expresso extensions of Struts logic tags.
com.jcorporate.expresso.ext.taglib

This package contains an abundance of Expresso specific tags.

Some of these tags closely duplicate the functionality of Expresso-aware struts tags. It will be up for you to decide which to use. The Expresso tags are often easier to use than the corresponding Struts tags, but may not offer as much flexibility, especially in the area of javascript code. It is up to you to decide.

com.jcorporate.expresso.ext.tests
com.jcorporate.expresso.ext.velocity
com.jcorporate.expresso.ext.xml.controllerContains a controller object for importing and export DBObject data into XML formats.
com.jcorporate.expresso.ext.xml.dbobjContains database objects for configuring XSL transformations of XML output from Controller objects.
com.jcorporate.expresso.kernelThe Expresso Kernel package forms the core interface and basic implementations of the future ECCR or Expresso Component and Configuration Runtime. ECCR will consist of a series of component trees, each tree forms its own configuration interface. @since Expresso 5.3
com.jcorporate.expresso.kernel.digester

This package contain bean classes and digester rule classes for loading the expresso runtime configuration file, and expresso component metadata.

com.jcorporate.expresso.kernel.digester.test
com.jcorporate.expresso.kernel.exception

This package contains an exception hierarchy that can be thrown by the Expresso runtime system..

com.jcorporate.expresso.kernel.internal

This package contains classes that should not be normally used or referenced outside of the kernel package hierarchy.

com.jcorporate.expresso.kernel.management

This package provide classes that provide the core logic for managing the Expresso configuration hierarchy. It can be expanded upon via Swing Clients, Web applications, etc.

If you are 'outside' of the hierarchy and need to be able to reach into it for management or backwards compatibility, use the ExpressoRuntimeMap to retrieve an instance of the various configuration runtimes that are available on the system.

 

 

com.jcorporate.expresso.kernel.management.test
com.jcorporate.expresso.kernel.metadata

This package contains bean classes that are created/loaded by the Digester system to represent metadata for Expresso components.

com.jcorporate.expresso.kernel.test
com.jcorporate.expresso.kernel.util

This package contains utility classes that assist in the operation of the kernel package and any other Expresso classes.

com.jcorporate.expresso.kernel.util.test
com.jcorporate.expresso.services.asyncprocessAsync processor framework.

The Async processor framework is designed to handle situations where an Expresso Job is not appropriate because you do want the results sent back to the user when it is done. Instead, the AsyncProcessor queues items up and processes them as fast as it can sending status and result objects back to the "Ticket Holder" when status is requested. These async processes have also been called "Active Objects."

See the EDG chapter on Async Processing for a more detailed description of the purpose of this package.

com.jcorporate.expresso.services.controllerThis package contains Controller objects to perform basic administration functions within Expresso, including security maintenance, testing, and default error handling.
com.jcorporate.expresso.services.controller.configuration
com.jcorporate.expresso.services.controller.dbmaint

This package contains the various State objects that make up the "Model" of the DBMaint controller. These states can be extended and customized to give DBMaint specific custom behaviours.

DBMaint is a generic database-editing web user interface. It provides all basic needs for add/update/delete/searching records for data tables. It interacts directly with DBObjects.

com.jcorporate.expresso.services.controller.tests
com.jcorporate.expresso.services.controller.uiObjects that provide an automatic user interface rendering capability to the system
com.jcorporate.expresso.services.crontabObjects that provide a system to run scheduled, recurring jobs. Most commonly used by Expresso's Job Handler subsystem.
com.jcorporate.expresso.services.crontab.tests
com.jcorporate.expresso.services.dbobjCommon database objects - used in many different applications
com.jcorporate.expresso.services.dbobj.tests
com.jcorporate.expresso.services.htmlHTML objects - used to build HTML pages by servlets to define their user interface. Also includes base objects for ReportPages, used by all modules for internal administrative reports.
com.jcorporate.expresso.services.jobContains a "test" job that can be used to verify that the Job Handler sub-system of Expresso is working correctly.
com.jcorporate.expresso.services.servletContains servlets used to maintain and view the database log, show status of the system, and to provide a servlet-based front-end to the DBTool program for creating database tables and other setup.
com.jcorporate.expresso.services.taglib
com.jcorporate.expresso.services.test

Contains classes that assist in unit testing using JUnit and Cactus testing.

For client side unit testing you should create a single test suite that creates Expresso at the beginning and drops it at the end. You can then use things like DBUnit to create/delete individual entries if needed, but the table creation is just too long for practical testing.

The other class of import is TestSystemInitializer. It allows you to specify a scratch database context that you can use, which, of course, is highly advisable since the unit tests are highly destructive.

com.jcorporate.expresso.services.validation

This package provides for a 'validation framework'. This framework is provided for a specific group of problems described as follows:

  1. User enters some information to perform some sort of action, let's say to unsubscribe from a mail list.

  2. The validation framework then sends a confirmation email to the user that includes a clickable URL. This URL contains a 128-bit random number.

  3. The user clicks on the random number. The framework then looks up that random number and dispatches the request to the appropriate ValidationHandler class.

  4. The validation handler then performs the appropriate actions and displays the final message to the user.

You can see this system in action in Expresso's registration system in: com.jcorporate.expresso.services.controller.RegistrationController

 

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.