2011/12/21 - Jakarta has been retired.

For more information, please explore the Attic.



Issue: 8
Date: March-April 2003
Url: http://jakarta.apache.org/site/news/200303.html

I'm sad to say Rob Oxspring hasn't been able to edit this newsletter so you'll have to make do with me instead. We'll all miss his observations of life here in Jakartaland. Hopefully, Rob will be again back soon.

This is the first wiki-built newsletter. See here for more details. The next few issues will probably be bi-monthly.

I'd like to extend the now-traditional thank-you to those who contributed and hope that you enjoy the read. If you would like to comment further on any of the highlighted discussions then please do so on the appropriate list, if you want to comment on the newsletter itself then please point your comments to general@jakarta.apache.org.

Robert Burrell Donkin

Editor: Nicola Ken Barozzi

Donated code has been integrated in CVS, and now Alexandria generates:

  • javasrc - fully linked and highlighted java source source
  • javadoc - java docs with standard doclet or in XML
  • jsdoc - initial implementation of javascript docs
  • uml - graph of relationship of all classes in png and svg
  • ant - graphs and docs about the Ant buildfile

For more details, see the site [1] and the CVS [2] or look at the initial sample doc generation done for Apache Cocoon [3].

[1] http://jakarta.apache.org/alexandria/

[2] http://cvs.apache.org/viewcvs/jakarta-alexandria/

[3] http://cvs.apache.org/~nicolaken/whiteboard/alexandria-docs/xml-cocoon/

Editor: Tetsuya Kitahata

The Byte Code Engineering Library version 5.1 has been released on 25 April 2003 after a long period of testing. It mainly contains bug fixes and introduces the possibility to use custom repositories.

For more details, see the site [1].

[1] http://jakarta.apache.org/bcel/

Editor: Christopher Lenz

It's now been over half a year since the last stable release of Cactus, a framework for unit-testing server-side Java code. However, that doesn't mean that the project has become less active, quite the contrary. With Christopher Lenz and Julien Ruaux two new committers have joined the game.

The focus for the next release of Cactus (which should be coming rather soon - honestly) has been on ease of use. In the past, it had often been quite hard to integrate Cactus in a development environment, be it an IDE or an automated build system based on Ant. The upcoming release of Cactus will provide custom Ant tasks that can transparently run tests on a variety of containers, as well as a plugin for the Eclipse IDE that extends the existing JUnit runner with the capability of running In-Container tests.

Other enhancements include:

  • A new ServletTestSuite class that enables a collection of normal JUnit tests to be executed inside a servlet container
  • Cactus test cases can have begin() and end() methods, which are similar to the JUnit setUp() and tearDown() but get invoked on the client side.
  • A new helper class (JspTagLifecycle) that simplifies testing of JSP tag libraries by providing a stub JSP engine
  • Integration of the Jetty servlet container
  • The ServletTestRunner can can perform the XSLT transformation for displaying a HTML test report on the server side

For more details, see the full feature list [1] and the list of changes [2].

[1] http://jakarta.apache.org/cactus/features.html

[2] http://jakarta.apache.org/cactus/changes.html

Editor: John Keyes

CLI has been redesigned and as such the next general release will be 2.0. The initial implementation of the redesign is not yet in CVS so user comments and feedback have not been gathered yet. More information will be posted to the mailing lists when appropriate.

Editor: Tim O'Brien

The initial release of Commons Codec 1.1 was release. Commons Codec contains original phonetic encoders, a Hex encoder, and a Base64 encoder integrated from xmlrpc and Commons HttpClient both of which were derived from original source code in Catalina. Codec 1.1 is mostly RFC 2045 and will be followed up shortly with release 1.1.1 to bring the project into full compliance with RFC 2045. This project is currently seeking input on which stream oriented Base64 encoder to integrate into a 1.2 release - please send suggestions to the Commons developer mailing list.

Editor: Martin Cooper

File Upload has gone through some significant changes recently. The code base has been overhauled to address several outstanding bug reports, as well as provide a much more solid base for customization. At the same time, real documentation has been added that addresses a large majority of uses of the File Upload component. A 1.0 Beta 2 release is anticipated as soon as the few outstanding bug reports are addressed.

User feedback would be very much appreciated.

Editor: Robert Burrell Donkin

In the last couple of months betwixt has been slowly moving forwards. Bugs were fixed and the following functionality added: setter for encoding when writing beans, support for reading composite map entries, support for specifying custom updater in the .betwixt file and support for writing mixed content.

Recently, there's been more from developers (which is good to see):



Hopefully they'll be more of the infamous refactoring happening soon - there's even a wiki page for those brave souls that feel like contributing some design wisdom.

Editor: Robert Burrell Donkin

April saw the release of a new Digester release. This was rushed out to fix a backwards compatibility issue with 1.4.x. So, the release notes contains pretty much all the Digester activity for March and April.

There are some exciting developments (probably) coming up in the near future including support for some validation:


and also Digester plugins (which allow the digestion to be specified in the xml to be read in!).

Editor: Robert Burrell Donkin

Slow but steady progress for BeanUtils. Bugs fixed - the number of bug reports and requests for enhancements is impressive and it takes time to process them with the quality that's required - but please keep them coming. We've been moving towards beanification of BeanUtils - creating proper classes that provide the functionality behind the static utility classes. This will allow different instances which can have their properties set and convertors registered just for that instances rather than globally.

Editor: Robert Burrell Donkin

A new component commons-math is in the process of being formed in the sandbox. The aim is to create library of lightweight, self-contained mathematics and statistics components. Anyone who's interested is cordially invited to join in the discussions on the commons-dev list!

Editor: Mark Womack

A new book on log4j entitled "The complete log4j manual", ISBN 2-9700369-0-8, authored by fellow log4j committer, Ceki Gülcü, has been published early March. The book is available directly from the author and in select bookshops throughout the world [0].

Development for the 1.3 version of log4j continues.

  • The jakarta-log4j-sandbox cvs repository has been created with filter, selector, and servlet related classes moved into it for initial contents [1]. The log4j-sandbox, similar to other Jakarta sandbox cvs repositories, is meant to allow for less restrictive development related to log4j. Experimental changes/tools can be explored without exposing the changes to the core log4j release. As the code matures, it will be folded into the log4j core release based on core committer acceptance.
  • Changes made to the log4j and log4j-sandbox build scripts to support CheckStyle and Jalopy targets.
  • Various changes from Paul Smith, Scott Deboy, Oliver Burns, and Mark Womack were applied to the to the Chainsaw gui tool. Before the changes, Chainsaw was was configured to receive events via a single socket. Now it can receive events from any remote appender by configuring it (via a normal log4j xml configuration file) to use a matching Receiver plugin. Changes were also made to allow for customized gui's to be built on top of the core Chainsaw table model using a new ChainsawAppender.
  • MDC support was added to the XMLLayout class and the Chainsaw gui tool by Paul Smith. PatternLayout was also extended to support the output of all defined MDC key/values [2].
  • Ceki Gülcü recently extended LoggingEvent to allow properties [3]. Properties are meant to be set by Layout and Appender classes as they output/process logging events. Properties are per logging event where MDC values are per thread.
  • Mark Womack added LoggingEvent display and filtering to the Chainsaw gui tool.
  • There was a good discussion about changes needed in the LoggingEvent class to allow instances to be reconstituted when received from remote sources that do not use LoggingEvent as the transport type (like XML for example). Changes will be applied to define a verbose constructor that takes the required LoggingEvent info [4].
  • Richard Bair proposed an interesting Configuration gui tool [5][6].
  • Sub-component configuration within the xml configuration file was recently added by Ceki Gülcü [7].
  • Raymond DeCampo started a discussion about cleaning up and extending the existing JDBCAppender. This is a goal for the 1.3 release [8].
  • Jacob Kjome was accepted as a commiter for the log4j cvs. Paul Smith and Scott Deboy were accepted as committers for the log4j-sandbox cvs [9].
  • A new version of Chainsaw (v2) is currently under development in the log4j-sandbox with Scott Deboy and Paul Smith leading the effort [10]. This new version provides a much deeper and richer gui tool for viewing logging events. Development continues at a fevered pace and feedback is welcomed and desired.
  • The Avalon logging facade, Log4JAvalonLogger, has been added to the log4j core release for v1.3 per the submission by Peter Donald [11].

[0] https://www.qos.ch/shop/products/clm_t.jsp

[1] http://marc.theaimsgroup.com/?l=log4j-dev&m=104434069306491&w=2

[2] http://marc.theaimsgroup.com/?t=104807258400001&r=1&w=2

[3] http://marc.theaimsgroup.com/?t=104796062500002&r=1&w=2

[4] http://marc.theaimsgroup.com/?t=104814323200003&r=1&w=2

[5] http://marc.theaimsgroup.com/?t=104852956700007&r=1&w=2

[6] http://marc.theaimsgroup.com/?t=104982383200011&r=1&w=2

[7] http://marc.theaimsgroup.com/?t=104921701700001&r=1&w=2

[8] http://marc.theaimsgroup.com/?t=104916699700002&r=1&w=2

[9] http://marc.theaimsgroup.com/?t=105052349500005&r=1&w=2

[10] http://marc.theaimsgroup.com/?l=log4j-dev&m=105155769912213&w=2

[11] http://marc.theaimsgroup.com/?t=105126865600001&r=1&w=2

Editor: Otis Gospodnetic

Lucene is preparing for building of 1.3 RC1. We are just waiting for one or two more contributions to be checked into the CVS repository.

This month Lucene received a bug fix that was causing certain failures on Windows JVMs, due to a bug in java.io.File's renameTo (File) method. The fix came from Matt Tucker of Jive Software [1]. Tatu Saloranta refactored QueryParser, making it much easier to extend and provide custom query parsing behaviour. [2]

For those who want to learn more about idexing text with Lucene, a new article on that subject has been published on Onjava.com. [3]

[1] http://mail-archives.apache.org/eyebrowse/ReadMsg?listName=lucene-dev@jakarta.apache.org&msgId=657670

[2] http://mail-archives.apache.org/eyebrowse/ReadMsg?listName=lucene-dev@jakarta.apache.org&msgId=651229

[3] http://www.onjava.com/pub/a/onjava/2003/03/05/lucene.html

  • Patch applied to allow setting of sheet order. [1]
  • Patch applied to fix issue with rewriting continuation records. [2]
  • Patch applied [3] to:
    1. Provide PrintArea Support via NamedRegion References (i.e. Sheet1!$A$1:$B$2)
    2. Refactored PrintTitles a bit to reuse built-in printarea commonalities (zero length fields, etc)
    3. Added new tests
  • Jason Height voted a committer [4]
  • Development release 1.10.0 created
  • Fixed an issue that was causing HDF to crash on certain word documents [5]
  • Interesting discussion on whether to move to a "real" parser for dealing with formulas. [6]
  • Workbook corruption issue when adding already existing row [7]
  • Nightly builds stopped for some reason and have now been restored [8]
  • Danny Mui voted in as committer [9]
  • Fix for bug #15019. NullPointerException in shiftRows. [10]
  • Checkstyle removed from build as part of Andrew Oliver's audit [11]
  • Zoom, Freeze Pan, Split Panes, Printout column/row repeating support added [12]

[1] http://issues.apache.org/bugzilla/show_bug.cgi?id=17491

[2] http://issues.apache.org/bugzilla/show_bug.cgi?id=17373

[3] http://issues.apache.org/bugzilla/show_bug.cgi?id=17411

[4] http://marc.theaimsgroup.com/?t=104592698900003&r=1&w=4

[5] http://issues.apache.org/bugzilla/show_bug.cgi?id=17208

[6] http://marc.theaimsgroup.com/?t=104569344200001&r=1&w=4

[7] http://issues.apache.org/bugzilla/show_bug.cgi?id=17222

[8] http://marc.theaimsgroup.com/?l=poi-dev&m=104569323406383&w=4

[9] http://marc.theaimsgroup.com/?t=104466539000001&r=1&w=4

[10] http://issues.apache.org/bugzilla/show_bug.cgi?id=15019

[11] http://marc.theaimsgroup.com/?t=104453771000003&r=1&w=4

[12] http://marc.theaimsgroup.com/?l=poi-dev&m=104452985604298&w=4

Editor: Martin Cooper

Struts is currently in a holding pattern, awaiting final releases of all its Commons dependencies. A previous dependency on Commons DBCP, and hence Commons Pool, has been removed by reverting to the generic data source used in earlier versions of Struts. The one oustanding dependency is on Commons File Upload. It is anticipated that Struts 1.1 RC2 will be released shortly after a File Upload final release.

Editor: Howard M. Lewis Ship

The Tapestry project is quickly coming together as a Jakarta project. The final release of Tapestry 2.3 was released at the end of February [1] and work on the radically improved 3.0 release is surging towards an initial beta release in the near future. Neil Clayton is working on a revised and improved Tutorial and Howard Lewis Ship is squeezing in some time to write an improved User's Guide. Tapestry is now building under Gump. A vote on Tapestry's acceptance as a full-fledged Jakarta project is currently in progress, with all indications of a successful outcome.

Meanwhile, new committer David Solis has been providing bug fixes, a suite of WML components, and documentation. Tapestry is really thriving under the Jakarta banner!

[1] http://jakarta.apache.org/site/news.html#20030227.1

A servlet based framework that allows experienced Java developers to quickly build secure web applications.

Editor: Eric Pugh, Chris Chew

The Turbine team is rapidly driving towards the initial beta release of 2.3!

Turbine has seen extensive refactoring over the last two months. Notable changes include:

  • Full integration of the commons-fileupload, commons-email, commons-logging, and commons-configuration jars
  • Significant refactorings of the Security, Templating, and PullTools Services.
  • New ability to run Avalon Components.
  • A new implementation of the security service using Torque generated OM objects. This makes extending the user object much easier.

See changelog for a complete list of enhancements

Additionally a new documentation project is being kicked off by Chris Chew[1] as well as talks of possibly a new logo.

[1] http://mail-archives.apache.org/eyebrowse/ReadMsg?listName=turbine-user@jakarta.apache.org&msgNo=14762

About Jakarta

About Apache

Retired Subprojects