Avalon Framework 4.1 Released ----------------------------- The Avalon team is proud to announce the 4.1 final release of the Avalon Framework.
About Avalon ------------ The Avalon project is Apache's Java Server Framework. It is separated into five sub projects: Framework, Excalibur, LogKit, Cornerstone, and Phoenix. Its purpose is to simplify server side programming for Java based projects. It formalizes serveral best of breed practices and patterns for server side programming. For more information about Avalon, please go to http://jakarta.apache.org/avalon About Avalon Framework 4.1 -------------------------- The Avalon Framework formalizes the contracts and patterns used in the other Avalon projects. It is derived from modern software engineering techniques and aims to provide a solid basis on which to build server products. What that means is that we define the central interface Component. We also define the relationship (contract) a component has with peers, ancestors and children. This documentation introduces you to those patterns, interfaces, and relationships. The Avalon Framework raises the abstraction level from Object-Oriented Programming concept one notch to the Component-Oriented Programming model. This enables programmers to concern themselves with assemblies of classes, rather than the classes themselves--thus reducing the number of things the programmer must keep in mind, and speeding up application development. The Avalon Framework is already used in Cocoon2 (http://xml.apache.org/cocoon2), an XML publishing framework. The Avalon Framework is also used in Apache JAMES (http://jakarta.apache.org/james), a Java(tm) Mail Server. Another project that is built on Avalon Framework is Jestkop (http://www.jesktop.org), a cross-platform replacement for your ordinary desktop. If you are evaluating Avalon and want the proof that it's claims are valid check them out. For more information about Avalon Framework 4.1, please go to http://jakarta.apache.org/avalon/framework ChangeLog for Avalon Framework 4.1 *) Improve and update the configuration javadocs to reflect the new namespace support. [JT] *) Deprecate the Loggable and AbstractLoggable classes, and replace them with LogEnabled and AbstractLogEnabled. [BL] *) Add an abstraction layer to the Logging implementation. Thanks to Peter Donald for supplying the interface. [BL] *) Add Namespace support to Configuration files. [BL] *) Add AvalonFormatter that was in LogKit's heirarchy. This way, we avoid circular dependancies. [BL] *) Previously resolve did not throw a ContextException. This made it difficult to indicate errors resolving objects. It now throws an exception thus allowing errors to be propogated and recorded. [PD] *) New ConfigurationSerializer to have your configuration objects persist. [BL] *) Upgrade DefaultConfigurationBuilder to be JAXP compliant, with the option to pass in your own XMLReader. [BL] *) Configuration objects are now Serializable. [PD] *) Add new support to ask a component manager if it has a component. [BL] *) Bug fixes for documentation [PD] *) Update developers docs to support new configuration methods. [BL] *) Improved "Hello World" documentation. [PH] *) Add UML diagrams supplied by Dieter Wimberger [PD] *) Add new author bios. [BL] *) Update build process to proposed standard. [BL] *) Added a method to Version to parse a Version from a string. Added accessor methods to Version to allow access to major/minor/micro components of version. [PD] *) Updated Version class to refer to micro version rather than revision. This is to match the terminology for JDK versioning. This is just documentation changes. [PD] *) Changed access of Enum and ValuedEnum constructors from public to protected, to prevent Enum users from breaking type-safety by adding new Enum items. This breaks backwards-compatibility in cases where Enum and ValuedEnum were being incorrectly used. [JT] Downloads for Avalon Framework 4.1 available at http://jakarta.apache.org/builds/jakarta-avalon/release/framework/latest --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]