JAFFA Version 1.1 RELEASED!
We have now completed the development of Jaffa v1.1 and it is now available for download
Some of the new features in Version 1.1 are
Test Driving v1.1
The majority of the Jaffa team have been involved in developing an application based on this Jaffa v1.1 base line. That application has been successfully built and tested, so we feel that this proves that the new features added to Jaffa are robust enough for production use.
New DocumentationWe've now added some more How To sections for the data security as this new feature is pretty impressive for data visibility and segregation within your business application. Most web applications need to expose data selectively to certain user groups, and having the database do most of this work for you is just what it's designed to do.
What's Around the corner
As we've just released v1.1, we're also deciding what are the next key features to add into Jaffa. We welcome any input to this process. Our current plan is.
Web ServicesWe want to expand our middleware layer such that it can 'simply' expose our 'TranactionControllers' functions as Web Services. Included in this is a more efficient way of modeling the Data Transfer Object such that they could be generated quickly in conjunction with the Transaction Controller stub and any required Web Service Stubs or Proxies. We are currently looking at Castor/XML and Apache SOAP/Axis to achieve this.
Persistence LayerWe would like to extend the capability of the JDBCEngine so that it supports JTA for distributed transactions, and then also allow domain object to be mapped to different database connections. Obviously dealing with relationships across different data source is a non-trivial issue to resolve.
We have some performance tuning required in the DML generation engine for some complex join scenarios
We are investigating an Aggregate Domain Object Pattern that will make use of dynamically created views for doing multi-table queries and retrievals.
PatternsWe're looking into the MaintenanceComponent pattern that can perform Create/Update/Delete functions on Domain Objects. This will complement the Finder, Viewer and Lookup patterns.
GeneralChange use of XML such that we always validate DTD's/Schemas. We will also start using Public in addition to System Ids, so validation can be done without relying on connectively to http://jaffa.sf.net/DTD
Add some helpers for a Global Application Business Rules architecture
To make security configuration easy to set up, we're developing a plug-in for 'Together Control Center' such that you can model Actors, Use-Cases, Business Functions and Components on UML diagrams, and then have these translate straight into roles.xml, business-functions.xml and components.xml
Development of a Business Function Event Architecture to allow custom handler to be tied into any defined business event that the application consuming Jaffa will raise.
Development of an Outbound interface architecture such that external system interfaces can be configured into the Business Function Event Architecture
Development of a User based E-mail subscription service to the Business Function Events. User will subscribe to the event they want to be notified of, including the ability to filter the event trigger not only by name but also by the context associated to the event.
As we progress with this new features, we'll be updating the site to indicate when the next release is planned, and in a bit more detail that the list above, what we'll be including.
What Happened To EJB's ?
You may be wondering why there's no mention of EJB's in the next release. There are two things to consider here. (a) It looks to the Jaffa Team right now that exposing functionality as Web Services, as opposed to EJB's is of more immediate benefit. (b) We are not sure if it makes sense to build our own Persistence Engine that support EJB's. With the standardization around Entity Beans and CMP, with products like TopLink/CocoBase that are already sophisticated O/R tools, its unclear as to what level a Persistence Engine in Jaffa is needed. Our guess right now is that we should allow our UOW and Criteria classes to act as an interface to an Entity Bean layer.
Again, what Jaffa is focused on is providing a complete integrated framework, based on joining other existing project together. Until we can find a clear way in which we can add value over current EJB persistent projects we'll stick with the JDBC Engine only.
However, we have done work in the Middleware layer with respect to providing call-in to a TransactionController wrapped by a session bean. We just assume that the session bean just uses regular Entity Bean / CMP rather that the UOW in Jaffa.
In addition to this our business function security is design to work both in a Web or EJB container, as is the new work were doing on the Global Application Business Rules architecture.
This site is hosted by , For any content issues, please contact the site administrator