October 15, 2003

The Apache Newsletter : Issue #2 -- Aug-Sep 2003

=========== The Apache Newsletter ===============
http://www.apache.org/newsletter/index.html
=================================================
Issue: 2
Issuer: The Apache Software Foundation
Editor: Tetsuya Kitahata
Date: Aug-Sep 2003 (15th October, 2003)
Url: http://www.apache.org/newsletter/200309.html
=================================================


Editorial
=========

This is the issue #2 of the Apache Newsletter [1] [2].

[1] - http://www.apache.org/newsletter/
[2] - http://www.apache.org/newsletter/200309.html

---------------------------------------------------------------------

Table of Contents
==================

o ApacheCon US 2003
o Apache Ant Project
o Apache APR Project
o Apache Avalon Project
o Apache Cocoon Project
x Apache Cocoon
o Apache Commons Project
o Apache DB Project
x DB OJB
x DB Torque
o Apache HTTP Server Project
o Apache Incubator Project
x Incubator General
x Incubator AltRMI
x Incubator FTPServer
x Incubator Geronimo
x Incubator JaxMe
x Incubator Pluto
x Incubator WSRP4J
x Incubator XMLBeans
o Apache James Project
o Apache Jakarta Project
x Jakarta General
x Jakarta Alexandria
x Jakarta BCEL
x Jakarta Cactus
x Jakarta Commons General
o Jakarta Commons BeanUtils
o Jakarta Commons Betwixt
o Jakarta Commons DBCP
o Jakarta Commons Daemon
o Jakarta Commons Digester
o Jakarta Commons Modeler
o Jakarta Commons Resources
o Jakarta Commons HttpClient
o Jakarta Commons Sandbox -- Attributes
x Jakarta ECS
x Jakarta Gump
x Jakarta Jetspeed
x Jakarta JMeter
x Jakarta Log4j
x Jakarta Lucene
x Jakarta ORO
x Jakarta POI
x Jakarta Regexp
x Jakarta Slide
x Jakarta Struts
x Jakarta Taglibs
x Jakarta Tapestry
x Jakarta Turbine
x Jakarta Tomcat
x Jakarta Velocity
x Jakarta Watchdog
o Apache Perl Project
o Apache Maven Project
o Apache Tcl Project
o Apache WS Project
x WS General
x WS Axis
x WS SOAP
x WS WSIF
x WS WSIL
x WS XML-RPC
o Apache XML Project
x XML General
x XML Axkit
x XML Batik
x XML Commons
x XML FOP
x XML Forrest
x XML Secutiry
x XML Xalan Java 2
x XML Xalan C++
x XML Xerces Java 2
x XML Xerces C++
x XML Xerces Perl
x XML Xindice
o PHP Project
o New Committers
o Readers' Voice (Apache Newsletter Issue 1)
o Announcement of forthcoming newsletter

---------------------------------------------------------------------

ApacheCon US 2003
=================

ApacheCon [1] Early Bird Registration Ends Soon

Early Bird Registration for ApacheCon 2003 ends at 23.59ET on
19 October. By registering now, you can save up to US$300!


ApacheCon US 2003
16-19 November 2003
Alexis Park Resort
Las Vegas, Nevada, US

More than 60 sessions highlight core and next-generation Apache server
tools, offering a wide range of beginner, intermediate and advanced
sessions. Learn firsthand the latest developments in Apache, the world's
most popular Web server software, as well as key open source projects,
including PHP, Perl, XML, Java, MySQL, and WebDAV. ApacheCon 2003 is
going to be a great event with a three-day vendor expo, social
activities, BOFs and more. We want you to be a part of it!

Registration rates:

Through 19 October: US$599
Until 15 November: US$799
After 16 November: US$899

Register today at http://www.apachecon.com/ We look forward to seeing
you there!

Got Advert? Help Support ApacheCon
-----------------------------------

Show your support for Apache by displaying an ApacheCon banner or
button on your website! Choose from several animated and static
images [2].

[1] - http://www.apachecon.com/
[2] - http://www.apachecon.com/html/adverts.html

---------------------------------------------------------------------

Apache Ant Project
==================
"Apache Ant is a Java-based build tool"

Ant1.6beta1 has just been released; the Download Page [2] lists the
changes. Please download and enjoy it today!

As well as the usual accretion of targets and features, there have been
some major reworkings of some of Ant's internals, particularly those
bits dealing with classloading, how ant's batch files launch, and other
things that are so profound they will take a while to get used to. We
have been running everything nicely on the Gump for months, with Axis
being the only recent project to break in subtle ways. However, although
Gump is a very broad test, it does not cover all the obscure corners of
how Ant is used in the rest of the world -the projects Gump builds tend
to be well structured build files written by competent OSS development
teams. Thus we no doubt expect some surprises from the user community,
and we will go through our traditional gentle process to getting a
release out the door -the more people who use this release and comment
on issues, the faster and better the process will be.

At this point Ant1.6 is essentially feature frozen: only bug fixes and
documentation enhancements are going to go in, and even those are at the
discretion of the build manager. Additions will go into Ant1.7, on the
CVS_HEAD branch, though changes in that branch are fairly rare during
the beta phase, as the development team shifts to using the
ANT_16_BRANCH. Anyone submitting enhancement requests and new features
will feel somewhat neglected for the next few months.

Antoine Levy-Lambert is the build manager for this release. Antoine is
a new committer to the group this year. We're all very appreciative for
the contributions he has been making, and his willingness to take on the
role of build manager. It is good to see how rapidly new developers such
as Antoine, Peter Reilly and Jan Materne can become key developers in an
open source project, as it is a sign of a working open source
development process.

[1] - http://ant.apache.org/
[2] - http://cvs.apache.org/dist/ant/v1.6beta1/

---------------------------------------------------------------------

Apache APR Project
==================

[1] - http://apr.apache.org/

---------------------------------------------------------------------

Apache Avalon Project
=====================
"Apache Avalon project is an effort to create, design, develop and
maintain a common framework and set of components for applications
written using the Java language"

Avalon Framework 4.1.5 and Avalon Meta 1.1 package release.

The new framework release [2] includes enhancements linked to the new
Avalon Meta model [3]. Collectively the two packages represent an
important step forward in the evolution of the Avalon component model.
The new Avalon Meta package provides a container neutral component
type descriptor meta-info model supporting full description of type
dependencies, service publication, logging channel assumptions, context
strategy, casting and entry dependencies, and configuration meta info.
Tools released in conjunction with the Avalon Meta package include an
Ant task and Maven plugin supporting the automation of meta-info
generation from @avalon javadoc tags.

Release of the Excalibur i18n internationalization [4] and Excalibur
Configuration utilities [5]. These updates include minor enhancements to
configuration listing and equality testing, and facilities enabling
dynamic updating of a language locale.

Merlin 3.0 Beta 1 Release

Merlin [6] is an advanced component and service management solution
that simplifies and enhances component development, assembly and service
deployment concerns. Key Product Features include:

o auto assembly
o muli-layer configuration management
o advanced context management
o composite component management
o packaged deployment scenarios
o local and remote repository integration
o integral jar extension management
o Maven plugin support for meta-info generation and simulated
deployment
o product packaging and install services
o based on Avalon component meta model
o support for legacy migration

[1] - http://avalon.apache.org/
[2] - http://avalon.apache.org/framework
[3] - http://avalon.apache.org/meta
[4] - http://avalon.apache.org/excalibur/i18n/
[5] - http://avalon.apache.org/excalibur/configuration/
[6] - http://avalon.apache.org/merlin

---------------------------------------------------------------------

Apache Cocoon Project
=====================

Apache Cocoon
=============

Apache Cocoon is a web development framework built around the concepts
of separation of concerns (making sure people can interact and
collaborate on a project, without stepping on each other toes) and
component-based web development.

Cocoon implements these concepts around the notion of 'component
pipelines', each component on the pipeline specializing on a particular
operation. This makes it possible to use a Lego(tm)-like approach in
building web solutions, hooking together components into pipelines
without any required programming.

Cocoon is "web glue for your web application development needs". It is
a glue that keeps concerns separate and allows parallel evolution of the
two sides, improving development pace and reducing the chance of
conflicts.

Cocoon has been designed to coexist and interoperate side-by-side with
your existing J2EE solutions or to give them new functionality without
requiring any change in the existing infrastructure.

Cocoon interacts with many data sources, including filesystems, RDBMS,
LDAP, native XML databases, SAPR systems and network-based data sources.
It adapts content delivery to the capabilities of different devices like
HTML, WML, PDF, SVG, and RTF, to name just a few. You can run Cocoon as
a Servlet as well as through a powerful, commandline interface. The
deliberate design of its abstract environment gives you the freedom to
extend its functionality to meet your special needs in a highly modular
fashion.

[1] - http://cocoon.apache.org/2.1/
[2] - http://cocoon.apache.org/lenya/

---------------------------------------------------------------------

Apache Commons Project
======================

[1] - http://commons.apache.org/

---------------------------------------------------------------------

Apache DB Project
=================

Apache DB OJB
=============
"Object/Relational mapping tool that allows transparent persistence for
Java Objects against relational databases"

[1] - http://db.apache.org/ojb/

Apache DB Torque
================

Torque 3.1 has been released on 1 September 2003. Starting with this
release the Torque generator [2] is separated and also provides the
generation of a simple modell for OJB. (this will be improved in 3.2)
See the change log for a full list of changes and improvements.

[1] - http://db.apache.org/torque/
[2] - http://db.apache.org/torque/generator/

---------------------------------------------------------------------

Apache HTTP Server Project
==========================

The website Apacheweek [1] is host to an active newsletter documenting
the Apache HTTP Server Project, with some coverage of other Apache
projects.

See Apache HTTP Server Home Page [2] for more details.

[1] - http://www.apacheweek.com/
[2] - http://httpd.apache.org/

---------------------------------------------------------------------

Apache Incubator Project
========================

Incubation is required of all newly accepted projects until a further
review indicates that the infrastructure, communications, and decision
making process have stabilized in a manner consistent with other
successful ASF projects. While incubation status is not necessarily
a reflection of the completeness or stability of the code, it does
indicate that the project has yet to be fully endorsed by the ASF.

Incubator General
=================

Jim Jagieski has resigned the PMC Chair status and the PMC has elected
Nicola Ken Barozzi as the new chair-elect. The next step is for the ASF
board to ratify the selection and formally install Nicola as the new
chair.

We need to be very very clear about what it takes to be accepted into
the incubator. It should be a very low bar to leap, possibly

In these two months, there were a lot of constructive discussion of
*Incubate Incubator Project* there. We are still seeking the best way
for the ASF to accept and incubate projects in various forms.

For more information about Incubator Project, see the website [1].

[1] - http://incubator.apache.org/

XMLBeans
=========
"XMLBeans is an XML-Java binder that provides full XML schema support
together with full XML infoset fidelity."

The source for XMLBeans is now available through CVS and documentation
is now available through the website. The initial donation has been
checked as v1. Version 1 provides strong support for start-from-schema
(generating java objects mapping to an xml schema). Version 2 will
(amongst other things) add support for some start-from-java technologies
into the mix.

Work is now starting on xmlbeans v2. Discussions are continuing about
features and designs for this new version. For example see [2][3][4].
So join the mailing lists and get involved!

For more information, see the XMLBeans provisional website [1].

[1] - http://xml.apache.org/xmlbeans/
[2] - http://nagoya.apache.org/eyebrowse/BrowseList?listId=151&by=thread&from=503298
[3] - http://nagoya.apache.org/eyebrowse/BrowseList?listName=xmlbeans-dev@xml.apache.org&by=thread&from=491307
[4] - http://nagoya.apache.org/eyebrowse/BrowseList?listName=xmlbeans-dev@xml.apache.org&by=thread&from=502020

Geronimo
========
"Apache Geronimo is a new effort coordinated by the Apache Software
Foundation to make a J2EE compatible container."

In that period of time, the Geronimo project [1] has generated:

o 3200+ e-mails on this list alone
o 1000+ CVS commit batches
o 700+ subscribers to the developer list
o 1700+ of directories and files
o A large and active set of Wiki pages [3]
o And that's in the first month (August).

The announcement of the Apache Geronimo project generated an incredible
response from the community. Within its first month, the mailing list
has already seen over 3000 messages. This response has translated into a
large amount of people from all over the world working on the project.

The Apache Geronimo project is an effort to develop an open-source J2EE
container using a BSD-derived license that is fully compliant with the
J2EE specification as well as fully Sun certified. The project will
achieve this by building upon the many Java projects at the Apache
Software Foundation. In addition, the project is bringing together
leading members of the Castor, JBoss, MX4J, and OpenEJB communities,
and possibly others.

For further information, please see the Geronimo Website [1], [2].

[1] - http://incubator.apache.org/projects/geronimo.html
[2] - http://incubator.apache.org/projects/geronimo-proposal.html
[3] - http://nagoya.apache.org/wiki/apachewiki.cgi

JaxMe
======
"JaxMe is the ASF implementation of the JAXB specification for Java-XML
Binding."

The JaxMe [1] binding compiler takes in a schema description and
outputs a set of java classes. JaxMe will marshall these beans to xml
complient with the schema and unmarshall a conforming XML document into
these Java Beans. JaxMe will allow persistance capabilities to be added
to these generated beans.

JaxMe is a new subproject of the Apache Incubator, proposed to become a
part of ws.apache.org. It is an open source implementation of JAXB, the
specification for Java/XML binding. Java/XML binding means, that a
binding compiler takes as input a schema description (in most cases an
XML schema, but it may be a DTD, a RelaxNG schema, a Java class
inspected via reflection, or a database schema). The output is a set of
Java classes:

A Java bean class matching the schema description. (If the schema was
obtained via Java reflection, the original Java bean class.) Read a
conforming XML document and convert it into the equivalent Java bean.
Vice versa, marshal the Java bean back into the original XML document.
It is worth noting, that JaxMe is based on a generic source generation
framework [2] and a generic parser for XML Schema [3], which might be of
interest to other projects as well.

For more information, please take a glance at the JaxMe website [1].

[1] - http://ws.apache.org/jaxme/
[2] - http://ws.apache.org/jaxme/js/
[3] - http://ws.apache.org/jaxme/xs/

WSRP4J
======
"The OASIS Web Services for Remote Portlets (WSRP) standard simplifies
integration of remote applications/content into portals."

For more information, see the WSRP4J website [1].

[1] - http://ws.apache.org/wsrp4j/

Pluto
=====
"Pluto is the Reference Implementation of the Java Portlet Specfication
(JSR 168)"

For more information, see the Pluto website [1].

[1] - http://jakarta.apache.org/pluto/

AltRMI
======
"AltRMI is a from-scratch replacement for RMI"

For more information, see the AltRMI website [1].

[1] - http://incubator.apache.org/projects/altrmi/

FTPServer
=========
"FtpServer is a complete FTP Server component based on Avalon Phoenix."

For more information, see the FTPServer website [1].

[1] - http://incubator.apache.org/projects/ftpserver/

---------------------------------------------------------------------

Apache James Project
====================
"Apache James offers a mail and news server, supporting Mailets, SMTP,
POP3, NNTP, and soon..IMAP"

For further information about the Apache James, please visit our
website [1].

[1] - http://james.apache.org/

---------------------------------------------------------------------

Apache Jakarta Project
======================

---------------------------------------------------------------------

Jakarta General
===============
"Ideas, suggestions, and comments on the overall Jakarta project"

22 September 2003 - Tomcat 5.0.12 Beta released
07 September 2003 - Tapestry 3.0-beta-3 released
04 September 2003 - Turbine 2.3 released
03 September 2003 - Regexp 1.3 released
02 September 2003 - Commons Lang 2.0 released
10 August 2003 - Commons Modeler 1.1 released
07 August 2003 - JMeter 1.9 Final Version released
01 August 2003 - Commons HttpClient 2.0 Release Candidate 1 released
01 August 2003 - Tomcat 4.1.27 Stable released

For participation to the jakarta general mailing list, please go to the
mailing list information page [1].


[1] - http://jakarta.apache.org/site/mail2.html#general

---------------------------------------------------------------------

Jakarta Alexandria
==================
"CVS/Javadoc/Source code/Documentation management system"

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

---------------------------------------------------------------------

Jakarta BCEL
============

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

---------------------------------------------------------------------

Jakarta BSF
===========
"Bean Scripting Framework"

[1] - http://jakarta.apache.org/bsf/

---------------------------------------------------------------------

Jakarta Cactus
==============

[1] - http://jakarta.apache.org/cactus/

---------------------------------------------------------------------

Jakarta Commons - General
=========================
"creating and maintaining reusable Java components"

[1] - http://commons.apache.org/

Jakarta Commons BeanUtils
=========================

Recently there been quite a lot of discussion about the possibility of
providing a comprehensive solution to the problem of bean<->string
conversions [2].

[1] - http://commons.apache.org/beanutils.html
[2] - http://marc.theaimsgroup.com/?t=106473526000001&r=1&w=2

Jakarta Commons Betwixt
=======================

[1] - http://commons.apache.org/betwixt/

Factored out Object <-> Strong conversion into pluggable class and
enhanced default behaviour so that round tripping java.util.Date's is
supported with default configuration. Read more [here].

Added hook to allow users to plug in custom bean creators for reading.

Added support for implementation classes for Abstract classes and
interfaces.

Added support for class normalization strategy (which allows users
better control of interface implementations for example when dealing
with Entity Beans).

Jakarta Commons Daemon
======================

Jakarta Commons Daemon has been promoted from the commons sandbox into
the commons proper, and we're gearing up for a 1.0 final release. Daemon
is used by Tomcat 5.0 to allow running tomcat on port 80 on unix system
without logging in as the root user. For more information, see the
Commons Daemon web site [1].

[1] - http://commons.apache.org/daemon

Jakarta Commons Digester
========================

Digester is a rule-based xml-to-java object mapper. For more
information see [1].

A new package called plugins has recently been added [2]. This provides
an easy mechanism to add new digestion rules dynamically during a parse.
See the package-level documentation for more details [3].

New example code illustrating typical usage cases for digester has been
added to CVS.

Discussions about the best ways to make available the data contained in
processing instructions [4] but the design is yet to be finalized. So,
now is a good time to join the list if you want to influence this debate.

[1] - http://commons.apache.org/digester.html
[2] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=106506299806256&w=2
[3] - http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-commons/digester/src/java/org/apache/commons/digester/plugins/package.html?rev=1.2
[4] - http://marc.theaimsgroup.com/?l=jakarta-commons-user&m=106448466019682&w=2

Jakarta Commons Modeler
=======================

Jakarta Modeler version 1.1 has been released! For more information,
see the Commons Modeler web site [1].

[1] - http://commons.apache.org/modeler/

Jakarta Commons Resources
=========================

Commons resources is a sandbox component factored out of structs.
It is a sophisticated message resource management component. For more
information see the Commons Resources website [1].

[1] - http://commons.apache.org/resources/

Jakarta Commons HttpClient
==========================

HttpClient has been making steady progress toward 2.0. We hope to have
a final 2.0 release by the end of October. Please see the HttpClient
site [1] for more details.

[1] - http://commons.apache.org/httpclient/

Jakarta Commons Sandbox: Attributes
===================================

The Commons Attributes project is an attempt at adding C#-like
attributes to Java, enabling developers to add attribute objects to
language elements (classes, methods, etc.). The project had been
abandoned for a while, but was re-started in late August, and was given
a complete overhaul with a new architecture and lots of new features.

Examples of new features:

o Inheritable attributes
o Ability to add attributes to return values and method parameters
o Maven integration
o Dropped requirement that attribute classes had to be serializable

Project page: http://commons.apache.org/sandbox/attributes/

Q&A: http://commons.apache.org/sandbox/attributes/api/overview-summary.html

---------------------------------------------------------------------

Jakarta Gump
=============

Gump Service:

The primary Gump server has suffered a service outage since
September 9th.

As such this link is currently stale:

http://cvs.apache.org/builds/gump/latest/

Alternate Gump servers are still active, and will temporarily take
over nagging duty.

http://gump.covalent.net/log/index.html
http://nagoya.apache.org/~rubys/gump/
http://gump.cocoondev.org/

SF.net outages:

CVS outages at SF.net continue to plague Gump, since it can't access
staples like junit & as such whole trees of projects are not accurately
integrating for this reason.

Gump Metadata (an OSS map):

Stefan Bodwig has continued to maintain Gump descriptors -- the project
metadata -- providing an invaluable service to the OSS community.
Keeping Gump metadata healthy keeps continuous integration valuable. The
OSS community is empowered to maintain their own metadata, however
Stefan's expert contributions continue to supplement the efforts of
others.

Python Gump:

Work has continued on a Python re-write of Gump. The rationale for a
re-write, in short, being that a single language (Python) was more
conducive to forming a development community than the combination of
Java/XSLT/shell scripting/Perl?, etc. For more details see:

http://nagoya.apache.org/wiki/apachewiki.cgi?GumpPython

Python Gump provides the traditional "unsupervised runs"
(communicating/nagging via mail/HTTP) but has some new features.
Some notable differences are :

- A more OO approach to manipulating the metadata, and performing
processing.
- A GUI (for metadata browsing & 'personal Gumping')
- HTML documentation via xdocs, leveraging Jakarta Forrest to produce
the site.
- RSS feeds (for news updates on 'new successes' & 'new failures').
- A repository of built jars, in standard jar repository format.

Current servers (publicly) running Python Gump are:

HTML: http://lsd.student.utwente.nl/gump/index.html
RSS: http://lsd.student.utwente.nl/gump/index.rss
Repository: http://lsd.student.utwente.nl/gump/jars
HTML: http://gump.dotnot.org/index.html
RSS: http://gump.dotnot.org/index.rss
Repository: http://gump.dotnot.org/repository/
HTML: http://gump.chalko.com/py/index.html
RSS: http://gump.chalko.com/py/index.rss
Repository: http://gump.chalko.com/py/repo/

Python Gump remains a work in progress, and is currently deamed
experimental.

See Jakarta Gump Project Website [1] for more details.

[1] - http://jakarta.apache.org/gump/

---------------------------------------------------------------------

Jakarta Jetspeed
================
"user customizable Java Enterprise Information Portal, using Java and
XML and based on Turbine framework"

[1] - http://jakarta.apache.org/jetspeed/

---------------------------------------------------------------------

Jakarta JMeter
==============
"Pure Java desktop application designed to load test functional behavior
and measure performance"

[1] - http://jakarta.apache.org/jmeter/

---------------------------------------------------------------------

Jakarta Log4J
=============

The log4j team is hoping to release an alpha version of log4j v1.3
during the month of October, at the latest before [ApacheCon US 2003],
in Las Vegas, November 16 through 19th.

[PatternLayout] has been enhanced to understand conversion words
instead of conversion characters.

Development of the [JoranConfigurator] is nearing completion. It has
been introduced to cope with highly versatile configuration files.

The Chainsaw log visualizer has been improved dramatically. More
spectacular improvements are on their way.

---------------------------------------------------------------------

Jakarta Lucene
==============
"Lucene provides A high-performance, full-featured text search engine"

The Lucene team is busily preparing for another 1.3 release candidate
build, which will be soon followed by a 1.3 final release. If you are a
Lucene consumer, please give the latest codebase a try so that we can
ensure a top-quality 1.3 release.

[1] - http://jakarta.apache.org/lucene/

---------------------------------------------------------------------

Jakarta ORO
===========
"Jakarta ORO provides APIs for managing Regular Expressions using Java"

[1] - http://jakarta.apache.org/oro/

---------------------------------------------------------------------

Jakarta POI
===========
"APIs for manipulating various file formats based upon Microsoft's OLE 2
Compound Document format"

For more information, see the Jakarta POI website [1] and POI News [2].
Also, we are waiting your participation to our mailing lists! [3]

HPSF, POI's component to handle document properties, supports writing
of properties now. While in the past you could only read a document's
title, author and other document properties, you are now able to write
or modify them. HPSF comes with a [HOW-TO] explaining this in detail.

[1] - http://poi.apache.org/
[2] - http://nagoya.apache.org/poi/news/
[3] - http://jakarta.apache.org/site/mail2.html#poi

---------------------------------------------------------------------

Jakarta Regexp
==============
"Jakarta Regexp provides APIs for managing Regular Expressions using
Java"

[1] - http://jakarta.apache.org/regexp/

---------------------------------------------------------------------

Jakarta Slide
=============
"Jakarta Slide is WEBDAV aware content management system"

[1] - http://jakarta.apache.org/slide/

---------------------------------------------------------------------

Jakarta Struts
==============
"A model-view-controller framework for constructing web applications
with servlets and JavaServer Pages"

[1] - http://struts.apache.org/

---------------------------------------------------------------------

Jakarta Taglibs
===============

[1] - http://jakarta.apache.org/taglibs/

---------------------------------------------------------------------

Jakarta Tapestry
================

"Tapestry provides web framework which seeks to find greater harmony
between web designers and developers"

[1] - http://tapestry.apache.org/

---------------------------------------------------------------------

Jakarta Tomcat
==============
"Tomcat is the official Reference Implementation of the Servlet 2.* and
JavaServer Pages 1.* technologies"

[1] - http://tomcat.apache.org/

---------------------------------------------------------------------

Jakarta Turbine
===============
"a servlet based framework that allows developers to quickly build
secure web applications"

[1] - http://jakarta.apache.org/turbine/

---------------------------------------------------------------------

Jakarta Velocity
================
"Velocity is a general purpose Java-based template engine"

[1] - http://jakarta.apache.org/velocity/
[2] - http://jakarta.apache.org/velocity/tools/

---------------------------------------------------------------------

Jakarta Watchdog
================

[1] - http://jakarta.apache.org/watchdog/

---------------------------------------------------------------------

Apache Maven Project
====================

Maven is a Java project management and project comprehension tool.
Maven is based on the concept of a project object model (POM) in that
all the artifacts produced by Maven are a result of consulting a well
defined model for your project. Builds, documentation, source metrics,
and source cross-references are all controlled by your POM.

Maven 1.0 RC1 [2] was released 30 September. This was another quiet
release mostly fixing problems [3] with plugins and adding functionality
that allows the automated download and installation of plugins. There is
also a preliminary Windows installer available.

With this work complete, plugins are now being released on their own
cycle, although they will still be distributed with the main Maven
release, at least for the time being. This has allowed critical bugfixes
and improvements to get to the users much more quickly.

The Maven team are now working on RC2 which will focus on some
impressive performance and memory usage improvements.

A blog called the Maven Diaries [4] has been started to let people know
the current direction and status of the project for those that want to
follow it more closely.

See The Apache Maven Home Page [1] for more details.

[1] - http://maven.apache.org/
[2] - http://maven.apache.org/builds/release/1.0-rc1/
[3] - http://jira.codehaus.org/secure/IssueNavigator.jspa?view=&tempMax=1000&decorator=printable&start=0&fixfor=10181&mode=hide&reset=true&pid=10030
[4] - http://blogs.codehaus.org/projects/maven/

---------------------------------------------------------------------

Apache Perl Project
===================

As for July, mod_perl 1.28 was out, 1.29 real soon now and lots of work
is going on to get mod_perl version 2.x (and the 2.x docs:) up to speed.

For more information, please visit our website [1].

[1] - http://perl.apache.org/

---------------------------------------------------------------------

Apache TCL Project
==================

[1] - http://tcl.apache.org/

---------------------------------------------------------------------

Apache WS Project
=================

WS General
==========

For more information, see the Apache Web Service website [1].

[1] - http://ws.apache.org/

WS Axis
=======
WS SOAP
=======
WS WSIF
=======
WS WSIL
=======
WS XML-RPC
==========

Java Axis has been reasonably quiet, with general progress but no
major developments. As most of the IBM developers seem to have gone
quiet, to gain momentum and become a true community resource, Axis needs
more end-users writing code and docs, patching their bugs, and becoming
committers. Volunteers welcome!

The core needs of Axis are:

* Fix user defects, especially those related to WSDL handling and
code generation. WSDL1.1 is trouble. We hope that WSDL1.2 will
be more manageable, as it is much simpler, but it will still take
extra engineering effort.
* XSD support. With the new JaxMe project in the incubator, we are
hoping to hand off a lot of the XSD-Java binding to JAXME.
* Address interoperability issues. Usually with .NET, funnily enough
* Improve the documentation.
* Keep up with the evolving JAX-RPC and SAAJ standards. We have some
SAAJ1.2 patches recently supplied by Heejune Ahn, that should keep
us up there.
* Keep up with evolving SOAP standards, especially those from the W3C.
We also track the WS-I Basic Profile for Web Services, because it
lays down tighter interoperability requirements.
* What has been coming along nicely is the C++ port of Axis; the
Sri-Lankan team have been busy, busy, busy. People are starting to
ask "when will it be ready?" The latest news is that it is
functionally complete, and a release plan is being put together.
* When Axis C++ goes beta, it will offer native mod_axis HTTPD module
to handle incoming SOAP requests. If this is what you have been
looking for, get involved in this project today!

[1] - http://ws.apache.org/axis/
[2] - http://ws.apache.org/soap/
[3] - http://ws.apache.org/wsif/
[4] - http://ws.apache.org/wsil/
[5] - http://ws.apache.org/xmlrpc/

---------------------------------------------------------------------

Apache XML Project
==================

XML General
===========

[1] - http://xml.apache.org/

AxKit
=====

For more information, see the Axkit website [1].

[1] - http://axkit.org/

Batik
=====

For more information, see the Apache Batik website [1].

[1] - http://xml.apache.org/batik/

XML Commons
===========

Activity on xml-commons really is picking up somewhat. However we still
need more people to take an interest there.

We now have a forrestized website, although a couple of tricky paths in
the docs still need work.

xml-commons-resolver-1.1b1 has been released. This beta of the popular
Resolver component is primarily to test our release process and
documentation structure. Expect a final 1.1 release shortly, before the
next Ant release which wants to bundle Resolver.

-- Shane Curcuru

For more information, see the XML-Commons website [1].

[1] - http://xml.apache.org/commons/

FOP
===
For more information, see the Apache FOP website [1].

[1] - http://xml.apache.org/fop/

Forrest
=======

Forrest[1] recently broke a long release drought with a 0.5 release in
September and 0.5.1 in October. 0.5 is significantly faster than 0.4 and
introduces many new features[2] while substantially retaining
backwards-compatibility.

Work on 0.6 is well underway. Features either implemented or in
discussion are:

* Lucene search integration
* Internationalization (i18n)
* In-place editing of content (no copying to build/webapp/)
* A new skin download system
* A rewrite of the Forrestbot using just Ant 1.6
* The list of Forrest-built sites continues to grow
(thanks in particular to Tetsuya Kitahata).

As always, we welcome new participants [3].

[1] - http://xml.apache.org/forrest/
[2] - http://xml.apache.org/forrest/changes.html#version_0.5.1
[3] - mailto:forrest-dev-subscribe@xml.apache.org

Xalan-J
=======

For more information, see the Xalan Java2 Project website [1].

[1] - http://xml.apache.org/xalan-j/

Xalan-C++
=========

For more information, see the Xalan-C++ Project website [1].

[1] - http://xml.apache.org/xalan-c/

Xerces-C++
==========

For more information about Xerces-C++. please visit our website [1]

[1] - http://xml.apache.org/xerces-c/

Xerces-J
=========

For more information, see the Xerces-J Project website [1].

[1] - http://xml.apache.org/xerces-j/

Xerces-P
========

For more information, see the Xerces-P Project website [1].

[1] - http://xml.apache.org/xerces-p/

Xindice
=======

For more information, visit the Xindice website [1].

[1] - http://xml.apache.org/xindice/

XML Security
============

For more information, see the XML-Security website [1].

[1] - http://xml.apache.org/xml-security/

---------------------------------------------------------------------

PHP Project
===========

PHP 4.3.4RC1 released

[29-Sep-2003] PHP 4.3.4RC1 has been released for testing. This release
candidate contains only bug fixes, so it should be quite stable. Please
test this release as much as possible, so that any remaining issues can
be uncovered and resolved prior to the final release.

For more information, please see the PHP project website [1].

[1] - http://www.php.net/

---------------------------------------------------------------------

New Committers
===============

o Brett Porter : brett at apache.org (Maven)
o Brian McCallister : brianm at apache.org (DB-OJB)

......... Congratulations!!

---------------------------------------------------------------------

Readers' Voice
===============

o Man, you worked hard on that! Well done. -- Ged
o thank you for putting together this great newsletter -- rodney
o Looks great. Would be nice to have a summary table or something....
-- joe
o Great job! Would be nice to have a small one sentece description
of each project beside the project name -- K
o Editing behemoth wiki page (for draft) is a little tricky -- BrianM

---------------------------------------------------------------------

Announcement of forthcoming newsletter
======================================

The next newsletter, The Apache Newsletter #3, will
be appeared around 15th November.
Please feel free to write your messages, articles to
http://nagoya.apache.org/wiki/apachewiki.cgi?ApacheNewsletterDrafts/Issue3

--------------------------------------------------------------------


--------------------------------------------------------------------
The Apache Newsletter -- http://www.apache.org/newsletter/


Posted by Tetsuya Kitahata at 10:23 AM

August 15, 2003

The Apache Newsletter : Issue #1 -- July 2003

=========== The Apache Newsletter ===============
http://www.apache.org/newsletter/index.html
=================================================
Issue: 1 (inaugural number)
Issuer: The Apache Software Foundation
Editor: Tetsuya Kitahata
Date: July 2003 (15th August, 2003)
Url: http://www.apache.org/newsletter/200307.html
=================================================


I am glad that this "Apache Newsletter" [1] could be published as
a result of the outgrowth of "Jakarta Newsletter" [2] and the newsletter
can cover all the projects including infrastructure, incubator et cetera.

Who is writing this? .. well I am a Japanese fellow who has been
engaged in the community build process for a long time in Japan.
I have been translating some of the Apache Jakarta projects' websites
into Japanese now [3] and last month I published the Jakarta newsletter
issue 9 as a successor of the Rob Oxspring and Robert Burrell Donkin's
great works. The newsletter was highly evaluated and now it has been
outgrown to the first "The Apache Newsletter". My main job is marketing,
business development and IT consulting [4].

Today, 15th August 2003, is the 58th anniversary of the end of the
Pacific War (and World War II) and I am very glad to publish this
newsletter in this moment. The internet and the wave of
internationalization gradually reduced the boundaries of each countries,
as well, this newsletter will be one of the *glue* of the communities in
the ASF umbrella, beyond the artificial boundaries of technical
languages etc. Hope this can gradually lead the good course of the ASF,
avoiding the balkanization of each projects and keep the hand tightly
with various projects.

I want to thank 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 mailing lists [5].
if you want to comment on the newsletter itself then please point your
comments to ApacheWiki [6].


[1] - http://www.apache.org/newsletter/
[2] - http://jakarta.apache.org/site/news/
[3] - http://jakarta.terra-intl.com/
[4] - http://www.terra-intl.com/
[5] - http://www.apache.org/foundation/mailinglists.html
[6] - http://nagoya.apache.org/wiki/apachewiki.cgi?ApacheNewsletterDrafts/Issue2

Issuer: The Apache Software Foundation
http://www.apache.org/
-- 15th August, 2003 --

Editor: Tetsuya Kitahata

---------------------------------------------------------------------

===================
Table Of Contents
===================

o Apache Ant Project
o Apache APR Project
o Apache Avalon Project
o Apache Cocoon Project
x Apache Cocoon
x Apache Lenya
o Apache Commons Project
o Apache DB Project
x DB Commons
x DB OJB
x DB Torque
o Apache HTTP Server Project
o Apache Incubator Project
x Incubator General
x Incubator AltRMI
x Incubator FTPServer
x Incubator XMLBeans
x Incubator Geronimo
o Apache James Project
o Apache Jakarta Project
x Jakarta General
x Jakarta Alexandria
x Jakarta BCEL
x Jakarta Cactus
x Jakarta Commons
o Jakarta Commons BeanUtils
o Jakarta Commons Betwixt
o Jakarta Commons Modeler
x Jakarta ECS
x Jakarta Gump
x Jakarta Jetspeed
x Jakarta JMeter
x Jakarta Log4j
x Jakarta Lucene
x Jakarta ORO
x Jakarta POI
x Jakarta Regexp
x Jakarta Slide
x Jakarta Struts
x Jakarta Taglibs
x Jakarta Tapestry
x Jakarta Turbine
x Jakarta Tomcat
x Jakarta Velocity
x Jakarta Watchdog
o Apache Perl Project
o Apache Maven Project
o Apache Tcl Project
o Apache WS Project
x WS General
x WS Axis
x WS SOAP
x WS WSIF
x WS WSIL
x WS XML-RPC
o Apache XML Project
x XML General
x XML Axkit
x XML Batik
x XML Commons
x XML FOP
x XML Forrest
x XML Secutiry
x XML Xalan Java 2
x XML Xalan C++
x ZML Xerces Java 2
x XML Xerces C++
x XML Xerces Perl
x XML Xindice
o PHP Project
o The Apache Infrastructure Team Report
o New Committers
o Readers' Voice (Jakarta Newsletter Issue 9)

---------------------------------------------------------------------

Apache Ant Project
==================

Recent Apache Ant Project [1] news are shown below:

"Ant 1.5.3-1"

This was a supplementary release made on April 16th. There was no
functional change. from Ant 1.5.3 - it just removed a copy of junit.jar
which had inadvertently been included in the Ant 1.5.3 build.

"Ant 1.5.4"
This is scheduled for release in the next week. It addresses just two
particular problems - the change to the javah entry point in the latest
JDK release and the Visual Age tasks. The latter, being only compatible
with JDK 1.1, were included to give users of this task a working release
prior to the Ant 1.6 release which depends on JDK 1.2+

"Ant 1.6"
Ant 1.6 is the current development codebase (CVS head). There is no
timeframe yet on this release.

"New committers"
A new committer Peter Reilly has been added to the project and is
making valuable contributions to the operation of the Ant core.

"Trivia"
As of August 8, Ant can build and run Mono code on Linux, using the
task

testCSC-Mono:
[csc] compiling 2 files
[csc] WROTE SYMFILE: 2 sources, 2 methods, 3 types, 4 line numbers,
0 locals, 2 namespaces, 223 bytes of string data
[csc] OffsetTable [615 - 52:491 - 2:567:48 - 2:543:24 - 3]
[csc] Compilation succeeded
[exec] hello, I look like Java, but I'm really .NET


[1] - http://ant.apache.org/

---------------------------------------------------------------------

Apache APR Project
==================

We could not hear the July news from Apache APR Project [1] Team. I hope
to hear the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://apr.apache.org/

---------------------------------------------------------------------

Apache Avalon Project
=====================

The recently flurry of activity on the Avalon mailing lists has
centered on defining the next generation of Avalon containers and
preparing a subsequent roadmap. With the dust beginning to settle,
the Merlin project is poised to be released and become the flagship
Avalon container, supporting the Avalon 4 Framework and previous
containers (Fortress and Phoenix).

Avalon Meta
===========

In an effort to standardize the various meta-info schemes used in
Avalon containers, the avalon-meta project was created in the sandbox
repository. Originally developed under the Merlin container, the meta
project will combine the AMTAGS (Avalon Meta Tags) proposal and the
original Merlin meta model. Consideration has also been given to
directly adopting the attrib4j project [1].

Avalon + .NET
=============

Work on a C# implementation of the Avalon framework accelerated this
last month. There has been more interest, a couple of additional
potential developers, and work starting on .NET container. The goal is
widest compatibility (i.e. will work with Mono and Microsoft .NET).


For more information about 'The Apache Avalon', please visit our
website [2] and participate in our developments. Any
inputs/comments/suggestions will be appreciated.


[1] - http://attrib4j.sourceforge.net/
[2] - http://avalon.apache.org/

---------------------------------------------------------------------

Apache Cocoon Project
=====================

Apache Cocoon
=============

Editor: Steven Noels

On July 30th, the Cocoon development team announced the release of the
Cocoon 2.1 [1] release candidate, which is a major advancement of the
successful 2.0 version. This 2.1 release affirms Cocoon's strengths for
XML-pipelined multiple media publishing, but now also offers a set of
truly compelling web application development strategies, including
several maturing form and application flow handling frameworks, which
are in the process of being unified for upcoming new versions of Cocoon.
Also, Cocoon is gradually becoming a componentized server environment,
offering the capability to only employ a restricted set of features
depending on your needs. Cocoon 2.1 also includes a redesign of the very
popular portal framework. It is to be expected that Cocoon 2.1 final
will be released in middle of August. The Cocoon project also welcomed a
set of new committers, all of them long-standing community members.
Furthermore, the incubation of Cocoon's subproject Lenya [2]. a
Cocoon-based CMS application, is actively underway.

The yearly Cocoon GetTogether, a developer and user community event to
be held on October 7th in Ghent, Belgium, has been announced on the
Cocoon community lists, and will now be organized by Orixo [3]. the XML
business alliance set up by several Cocoon-involved companies. The
event's website is located at 'event announcement page' [4].


[1] - http://cocoon.apache.org/2.1/
[2] - http://cocoon.apache.org/lenya/
[3] - http://www.orixo.com/
[4] - http://www.orixo.com/events/gt2003/


Apache Lenya
============

Editor: Michael Wechner

The former Wyona Content Management System has been donated to the
Apache Software Foundation and is currently being incubated as a Cocoon
subproject [1]. The Lenya developers are currently refactoring,
consolidating and enhancing the existing code base. The Lenya core is
architectured as a framework, whereas the Lenya publications can be used
as out of the box solutions. Release candidate 2 is expected to be ready
by the end of September.


[1] - http://cocoon.apache.org/lenya/

---------------------------------------------------------------------

Apache Commons Project
======================

We could not hear the July news from Apache Commons Project [1] Team.
I hope to hear the wonderful news in the next newsletter -- by Tetsuya
Kitahata


[1] - http://commons.apache.org/

---------------------------------------------------------------------

Apache DB Project
=================

DB OJB
======

July saw the final release candidate of OJB 1.0 (OJB 1.0 R.C.4) which
is heading toward the first FINAL Release of OJB 1.0.

NEW FEATURES:

o With this release we are feature complete for the 1.0 release!
For 1.0 you should not expect more features to be added.
o added a XDoclet OJB Module that allows to generate repository.xml
and DDL from tagged Java sources to the "contrib" distribution.
o added an OJB Taglib that allows to use OJB directly from JSP pages
to the "contrib" distribution.

NOTES:

o update used xdoclet version in 'ejb-examples' (see section
deployment/'Build the OJB sample session beans') to version 1.2xx

CHANGES:

o Enhance MetadataManager, add new methods, simplify handling of
different persistent object metadata profiles (means different
org.apache.ojb.broker.metadata.DescriptorRepository instances) at
runtime
o Provide a PUBLIC doctype declaration for the repository.xml
o add a convenience Constructor to QueryByCriteria that builds a query
selecting all instances of a class
o add isClosed() method to PersistenceBroker interface to check if
a broker instance was already closed.
o make OJB more strict in handling closed PersistenceBroker instances.
Now it's not any longer possible to use closed PersistenceBroker
instances.
o Package ...metadata.fieldaccess refactored/changed. Now all
PersistentField implementations support 'nested fields'.
See new entries in OJB.properties file. added new sections to documentation

BUG FIXES:

o fix several bugs in documentation
o fixed writing to memo columns in MS Access
o fixed optimistic locking problem
o fixed jdo tutorial setup

For more information, see the Apache OJB (Object Relational Bridge)
website [1]. Hope to hear your feedbacks/inputs/comments/ to our
developers' mailing list [2].


[1] - http://db.apache.org/ojb/
[2] - http://db.apache.org/mail.html


DB Torque
=========

Editor: Daniel Rall, Tetsuya Kitahata

Recent news includes release of Torque 3.0.2 and 3.1 alpha 2. See the
change log [1] for more details. Also, please visit our website [2] to
see the significant change on our project. Hope to hear your
feedbacks/inputs/comments/ to our developers' mailing list [3].


[1] - http://cvs.apache.org/viewcvs.cgi/db-torque/xdocs/changes.xml?rev=1&content-type=text/vnd.viewcvs-markup
[2] - http://db.apache.org/torque/
[3] - http://db.apache.org/mail.html

---------------------------------------------------------------------

Apache HTTP Server Project
==========================

July saw the two significant HTTP Server Release: Apache HTTP Server
2.0.47 at 9th July, 2003 and Apache HTTP Server 1.3.28 at 18th July,
2003.

HTTP Server 1.3.28 version of Apache is principally a bug and security
fix release. A partial summary of the bug fixes is given at the end of
the release note document. A full listing of changes can be found in the
CHANGES file. Of particular note is that 1.3.28 addresses and fixes 3
potential security issues:

HTTP Server 2.0.47 version of Apache is principally a security and bug
fix release. A summary of the bug fixes is given at the end of the
release note. Of particular note is that 2.0.47 addresses four security
vulnerabilities.

The website Apacheweek [1] is host to an active newsletter documenting
the Apache HTTP Server Project, with some coverage of other Apache
projects.

See The Apache HTTP Server Home Page [2] for more details.


[1] - http://www.apacheweek.com/
[2] - http://httpd.apache.org/

---------------------------------------------------------------------

Apache Incubator Project
========================

Incubator General
=================

Editor: Tetsuya Kitahata

In July, we saw the proposal of XMLBeans project [1] by Cliff Schmidt.
XMLBeans is a Java-XML binding tool that also allows low-level access to
the full XML instance Infoset. The technology was developed by BEA and
proposed to the Jakarta and XML communities. There had been
"[vote] XMLBeans to enter XML incubation" for the accepting this project
into Apache XML Project [2]. the XML PMC and XML committers welcomed
this project into it unanimously.

The other issues on Incubator Project are as follows:

The Apache Incubator Project is having the dubious honor of "incubating"
itself as well as other products. Regarding the Incubator Project itself,
there are still basic, fundamental issues that ideally should have been
resolved before it started accepting products/projects. As such, things
do not progress as smoothly as anticipated. Nevertheless, the following
projects are being incubated as we speak:

o AltRMI [3] : A transparent Remote Procedure Call bean.
o FtpServer [4] : A complete FTP Server based on Avalon principles.
o Tapestry [5] : A complete framework offering an alternative to JSP
& Velocity scripting environments.
o Lenya [6] : An Open-Source Content Management and publishing system.
It is based on open standards such as XML and XSLT.

Tapestry has left the incubator and Lenya is now in the status of
incubation via Apache Cocoon Project [7].

For more information about Incubator Project, see the website [8].


[1] - http://xml.apache.org/xmlbeans/
[2] - http://xml.apache.org/
[3] - http://incubator.apache.org/projects/altrmi/
[4] - http://incubator.apache.org/projects/ftpserver/
[5] - http://tapestry.apache.org/
[6] - http://cocoon.apache.org/lenya/
[7] - http://cocoon.apache.org/
[8] - http://incubator.apache.org/


XMLBeans
=========

Editor: Cliff Schmidt, Tetsuya Kitahata

XMLBeans is an XML-Java binding tool that uses XML Schema as a basis
for generating Java classes to easily access XML instance data. This
access to strongly typed data is integrated with a synchronized,
cursor-based XML store for complete access to the underlying XML,
combining low-level, full access APIs like SAX and DOM with the
convenience of Java binding.

XMLBeans has recently been accepted into the incubator. Developers
(both new and old) are welcome to join xmlbeans-dev at xml.apache.org
and find out more. Also, BEA's quick start page [1] will give you more
insight into the XMLBeans.

Over the last six months, we have developed a thriving developer
community to provide feedback directly to the development team through
a discussion forum. We have invited three of the members of the
community to join us as committers, based on their contributions to the
development of the product. We are also looking forward to finding
additional non-BEA committers from the Apache community during the
incubation process. We've also had thousands of users experiment with
the technology. Part of the reason for this success has been the
availability of sample code and thorough documentation [2].

For more information, see the XMLBeans provisional website [3].


[1] - http://workshop.bea.com/xmlbeans/quickStart.jsp
[2] - http://workshop.bea.com/xmlbeans/docindex.html
[3] - http://xml.apache.org/xmlbeans/


Geronimo
========

Editor: Ken Kress, Emmanuel Bernard

Apache Geronimo is a new effort coordinated by the Apache Software
Foundation to make a J2EE compatible container. There are two main
aspects to this project:

o create a complete J2EE certified server which is fully ASF/BSD
licensed and backed by a healthy open source community.
o create a fully modular J2EE stack so that the Apache community can
use whichever parts of the J2EE stack they require separate from
the J2EE server project.

For more information, please read:
o the proposal that started the project in the incubator [1]
o the Geronimo Web site [2]


[1] - http://incubator.apache.org/projects/geronimo-proposal.html
[2] - http://incubator.apache.org/projects/geronimo.html


---------------------------------------------------------------------

Apache James Project
====================

Editor: Serge Knystautas

We are actively working towards a 2.2 release that will incorporate
many of the long-awaited features that have been worked on in the 3.0
branch. We currently have released v2.2.0a9, which is still alpha and
incorporating other features, but we expect will have release candidates
in the next month or two.

The most notable changes in the 2.2 release will be:


o Mailet and matcher classloading! No longer will you need to rebuild
James or bundle your classes and libs into the james.sar. There is a
separate classes and lib directories that will make mailet and matcher
development much easier.
o Mail attributes! You can now add and manage adhoc attributes to mail
objects during the processing phase. These will not get stored on the
mime message, but will allow developers and administrators to transfer
information between processing stages.
o DBCP support. We have deprecated the home-brewed database connection
pooler in favor of the Jakarta commons package. Some James developers
are working with the DBCP team to improve this shared implementation.

For further information about the Apache James, please visit our
website [1].


[1] - http://james.apache.org/

---------------------------------------------------------------------

Apache Jakarta Project
======================

Apache Jakarta Project - General
================================

In July, we saw many release of Jakarta subprojects.

o 30 July 2003 - Jakarta POI 2.0-pre3 Released
o 25 July 2003 - Jakarta Tomcat 5.0.5 Alpha released
o 16 July 2003 - Jakarta Velocity Tools 1.0 Released
o 15 July 2003 - Jakarta Tapestry 3.0-beta-2 Released
o 15 July 2003 - Jakarta Tomcat 5.0.4 Alpha released
o 14 July 2003 - Jakarta Cactus 1.5-beta1 Released
o 11 July 2003 - Jakarta ECS (Element Construction Set) 1.4.2 Released
o 11 July 2003 - Jakarta POI 2.0-pre2 Released
o 02 July 2003 - Jakarta Commons HttpClient 2.0 Beta 2 Released

You can see the whole Jakarta news from the Jakarta News Page [1].
If you want the news from other jakarta-related projects, see the
'elsewhere' page [2].

In the general mailing list, there were some hot topics.

Proposal of the internationalization project. At first, i18n project
proposed by Robert Simpson was targeted mainly the Java Package of the
internationalization [3]. however, some Jakarta Committers picked up
this as more widely, and now thinking about the TLP (Top Level Project)
of the ASF.
1. ASF-wide document translation (projects)
2. ASF-wide resource translation projects
3. Non-language-specific i18n module development projects
4. general discussion place about i18n/l10n/m17n issues

For those who have concerns and interests in the
internationalization/localization projects in the ASF, we are sure to
provide the discussion room of this issue, so please let us know [4] if
you are interested in.

"Apache != HTTPD"?? The "Apache branding issue", deliverable issue from
the XMLBeans proposal occurred in the general list.

Is Jakarta user-friendly? .. Tetsuya Kitahata raised this issue,
related to the Mailing List Announcement Page [5] [6]. There are still
a room for the improvements of the user-friendliness, it seems.

For participation to the jakarta general mailing list, please go to the
mailing list information page [7].


[1] - http://jakarta.apache.org/site/news.html
[2] - http://jakarta.apache.org/site/elsewhere.html
[3] - http://www.itoolset.com/i18n/PROPOSAL.html
[4] - mailto:tetsuya@apache.org
[5] - http://jakarta.apache.org/site/mail.html
[6] - http://jakarta.apache.org/site/mail2.html
[7] - http://jakarta.apache.org/site/mail2.html#general


Jakarta Alexandria
==================

We could not hear the July news from Alexandria Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


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


Jakarta BCEL
============

We could not hear the July news from BSEL Team. I hope to hear the
wonderful news in the next newsletter -- by Tetsuya Kitahata


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


Jakarta BSF
============

We could not hear the July news from BSF Team. I hope to hear the
wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/bsf/


Jakarta Cactus
==============

Cactus Team announced the beta 1 release of Cactus 1.5, in the middle
of July. For further information, see the cactus website [1] or the
announcement page [2].


[1] - http://jakarta.apache.org/cactus/
[2] - http://jakarta.apache.org/site/news.html#20030714.1


Jakarta Commons
===============

Jakarta Commons BeanUtils
=========================

Editor: Robert Burrell Donkin

BeanUtils [1] is a library providing enhanced reflection and
introspection.

It has been clear for some time that the original design decision to
use Booch utilities (aka static utility classes) for the key BeanUtils
functionality limits the ways that BeanUtils can be customized in a web
application environment. This is a major draw back. So, the push over
the last few months has been to move BeanUtils over to objects whilst
retaining backwards compatibility.

The approach is now starting to pay dividends. Eric Pabst (and others)
have provided interesting patches which allow BeanUtils to be pushed
forward in new directions. Hopefully, the team will be able to catch up
with the bug reports whilst at the same time feeding in some more of
these new ideas.


[1] - http://commons.apache.org/beanutils.html


Jakarta Commons Betwixt
=======================

Editor: Robert Burrell Donkin

Betwixt [1] is an(other) Object <-> XML mapper. It specializes in
dynamic mappings (as opposed to generative solutions based on creating
objects from schema or static mappings) with flexible strategies
allowing developers to customize mappings programmatically.

It's been a long time since the last release and some users have
already been asking when the next one is going to be. There are a
number of substantial enhancements requiring extensive refactoring still
in progress (thanks to those who submitted those patches - they are
being worked on). Another alpha release may well happen once the current
crop have been processed.

Support for reading mixed content (that's the text between elements),
writing DynaBeans and more powerful control over object to string
conversions have been added in the last month so things are now starting
to move in the right direction. Also work has been done to improve the
unit tests.


[1] - http://commons.apache.org/betwixt/


Jakarta Commons Modeler
=======================

Editor: Yoav Shapira

The Modeler component of the Jakarta Commons subproject offers
convenient support for configuring and instantiating Model MBeans
(management beans), as described in the JMX Specification.

In July, a release plan was formed and agreed upon for the 1.1 final
release of the modeler component. This release is expected to be
available by mid August (10th August).

For more information, see the Commons Modeler website [1].


[1] - http://commons.apache.org/modeler/


Jakarta ECS
===========

Editor: Robert Burrell Donkin

Jakarta ECS [1] is a mature (venerable, even) framework for creating
markup programmatically. A 1.4.2 release maintenance release was made in
July. See the Jakarta News Section [2].


[1] - http://jakarta.apache.org/ecs/
[2] - http://jakarta.apache.org/site/news.html#20030711.1


Jakarta Gump
============

Editor: Adam Jack, Nick Chalko

Gump has accumulated 168 modules, providing 380 projects, and
continuous integration builds are running nightly on at least five
public servers. Of these modules, 20 have delegated their descriptors
to project CVS repositories, which allows local management of this.
Gump extracts source code from over 24 CVS repositories, with most CVS
repositories hosting multiple modules. Recent additions were new modules
for jUDDI [1] and Jakarta POI version 3 [2].

In order to improve the process around Gump, it has been added to
Bugzilla. Users can submit bug reports and/or requests for change in an
organized process.

Gump has suffered some outages, primarily due to: hardware failures
(lightening damage), CVS locks on remote CVS servers (hanging CVS
updates), and CVS outages in remote servers. Also, with the length of a
gump run now exceeds 7 hours, which can leads to build starting
generation on one day and ending on another (exposing a @@DATE@@ problem).

Although "SUCCESS" builds are the norm, there are numerous "PREREQ
FAILURE" when builds are marked as "FAILED". This represents healthy
project sharing/re-use/cooperation, which is exactly what Gump to
promotes and facilitates. The nightly gump output (see the latest build
result of gump [3]. reads like a dashboard on the state of "Open Source
Sharing".

Gump is starting to see more use as "personal" Gumps, where the
modules/projects that are not all available for public CVS access can
benefit from continuous integration, Additionally, some installations
are for a "trimmed stack" for build speed/focus.

As a corollary, gump is seeing more use with "packages" (pre-installed
base software) -- reducing build time, and focusing the builds on
specific software. Nick Chalko contributed the ability for gump to
convert module definitions to "nobuild" equivalents, on the fly. These
descriptors contain the but no metadata without invoking a build. This allows for package-based builds
of the original metadata, removing manual editing.

Further, a *nix gump.sh script is evolving to allow a standard build
process (combining the various gump build steps) to make it easier for
users to install/run their own gumps.

Are you interested? See Jakarta Gump Project Website [4] for more
details.


[1] - http://cvs.apache.org/builds/gump/latest/juddi.html
[2] - http://cvs.apache.org/builds/gump/latest/jakarta-poi-3.html
[3] - http://cvs.apache.org/builds/gump/latest
[4] - http://jakarta.apache.org/gump/


Jakarta Jetspeeed
=================

Editor: Santiago Gala

There has been a lot of things going on in the Jetspeed project [1].
The JSR-168 Portlet API was published, unveiling a proposal, originally
rooted in the Jetspeed project two years ago, to have a standard way to
specify the interaction between a Portal and its components, called
portlets. A lot of the traffic on the lists has been about discussion of
the API and of the forthcoming jetspeed-2 code base, which is under
development and will be JSR-168 compliant.

The rest of the traffic is the preparation of the final release of the
Jetspeed 1 line, which will be in maintenance mode after it is released.

The new CVS Repository can be found from here [2].


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


Jakarta JMeter
==============

We could not hear the July news from JMeter [1]. however, JMeter Team
announced the JMeter 1.9 Final Release early in August [2]. I hope to
hear the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/jmeter/
[2] - http://jakarta.apache.org/site/news.html#20030807.1


Jakarta Log4J
=============

We could not hear the July news from Log4J [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/log4j/


Jakarta Lucene
===============

We could not hear the July news from Lucene [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/lucene/


Jakarta ORO
============

We could not hear the July news from ORO [1] Team. I hope to hear the
wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/oro/


Jakarta POI
============

Editor: Tetsuya Kitahata, Andrew C. Oliver

We saw a series of POI 2.0 rel release (POI 2.0-pre2 and POI 2.0-pre3)
in July. HDF has been abandoned for a new codebase called HWPF (port of
Microsoft Word file format). The 3.0 release is shaping up to be
primarily geared towards performance and memory consumption improvements.
Besides the work on the HEAD (which doesn't yet pass all unit tests)
that will eventually branch to the 3.0 release, Chris Nokelburg has
donated a new implementation of POIFS which supports memory mapping and
other techniques. These changes will be incorporated in 3.0.

WHAT IS POI?

The POI project consists of APIs for manipulating various file formats
based upon Microsoft's OLE 2 Compound Document format using pure Java.
In short, you can read and write MS Excel files using Java. Reading
property information is also supported. Work continues on reading and
writing the MS Word format.

For more information, see the Jakarta POI website [1] and POI News [2].
Also, we are waiting your participation to our mailing lists! [3]


[1] - http://poi.apache.org/
[2] - http://nagoya.apache.org/poi/news/
[3] - http://jakarta.apache.org/site/mail2.html#poi


Jakarta Regexp
===============

We could not hear the July news from Regexp [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/regexp/


Jakarta Slide
==============

We could not hear the July news from Slide [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/slide/


Jakarta Struts
===============

We could not hear the July news from Struts [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://struts.apache.org/


Jakarta Taglibs
================

We could not hear the July news from Taglibs [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/taglibs/


Jakarta Tomcat
===============

Editor: Remy Maucherat

Tomcat 4.1.27 has been released, fixing number of security issues which
were recently discovered, and integrating other bugfixes. When
downloading it, make sure to also download and install the hotfix fixing
a regression in webapp reloading (bugzilla item 22096).

Tomcat 5.0 release plan was voted, and is now quickly making its way
towards beta, with a focus on bugfixing. Many old, long standing, Tomcat
issues which needed non trivial refactoring are addressed during this
period.

For more information, see the Tomcat Website [1] and join to the
mailing lists of ours [2].


[1] - http://tomcat.apache.org/
[2] - http://jakarta.apache.org/site/mail2.html#tomcat


Jakarta Turbine
================

We could not hear the July news from Turbine [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/turbine/


Jakarta Velocity
=================

Editor: Nathan Bubna

Velocity Tools [1] [2].version 1.0 has been released. This project
provides servlets and tools for rapid, flexible, MVC web development
with Velocity, tools for using Velocity with the Struts framework, and a
set of generic tools to help with any Velocity project.

Since the release work has rapidly progressed on development of support
for the new features in Struts 1.1. Support for ActionMessages, Tiles,
and modules has been implemented, and support for Validator should
follow soon.


[1] - http://jakarta.apache.org/velocity/
[2] - http://jakarta.apache.org/velocity/tools/


Jakarta Watchdog
=================

We could not hear the July news from Watchdog [1] Team. I hope to hear
the wonderful news in the next newsletter -- by Tetsuya Kitahata


[1] - http://jakarta.apache.org/watchdog/


---------------------------------------------------------------------

Apache Maven Project
=====================

July saw the beta-10 release of Apache Maven 1.0, which can be
downloaded from "Download Area" [1].

See The Apache Maven Home Page [2] for more details.


[1] - http://maven.apache.org/builds/release/1.0-beta-10/
[2] - http://maven.apache.org/


---------------------------------------------------------------------

Apache Perl Project
====================

We could not hear the July news from Apache Perl Project [1] Team.
I hope to hear the wonderful news in the next newsletter -- by Tetsuya
Kitahata


[1] - http://perl.apache.org/

---------------------------------------------------------------------

Apache TCL Project
===================

We could not hear the July news from Apache TCL Project [1] Team.
I hope to hear the wonderful news in the next newsletter -- by Tetsuya
Kitahata


[1] - http://tcl.apache.org/

---------------------------------------------------------------------

Apache WS Project
==================

Apache WS Project - General
============================

Editor: Tom Jordahl

The Apache Web Service project is off to a good start. We have 5
project currently under the Web Services umbrella: Axis, SOAP (inactive
- maintenence only), WSIF, WSIL, and XML-RPC. The PMC is currently
finishing up a VOTE on the Web Services charter [1] and is voting on a
proposal to add the Charon [2] project.

There is a PROPOSAL to create a WS-Commons project [3] and along with a
few projects that might fit in nicely, a WS-Security API [4] and a
Schema API [5].

If you are interested in helping out in any of these areas,
particularly the WS-Commons projects, please sign up on the wiki pages.

For more information, see the Apache Web Service website [6].


[1] - http://nagoya.apache.org/wiki/apachewiki.cgi?action=browse&id=WebServicesProjectPages/Charter
[2] - http://nagoya.apache.org/wiki/apachewiki.cgi?CharonProposal
[3] - http://nagoya.apache.org/wiki/apachewiki.cgi?WebServicesProjectPages/CharterForWSCommons
[4] - http://nagoya.apache.org/wiki/apachewiki.cgi?SecurityProposal
[5] - http://nagoya.apache.org/wiki/apachewiki.cgi?SchemaAPIProposal
[6] - http://ws.apache.org/


WS Axis
========

Editor: Tom Jordahl

Axis [1] released version 1.1 on June 16, 2003. The team is considering
what features and changes to include in the next (1.2) release. We have
recently warmly welcomed new committers Toshiyuki Kimura (Toshi), Eric
Friedman, Andras Avar and Rick Kellogg.

One recent change to the codebase is in XML encoding -Axis1.1 and
earlier encoding was both inefficient at times, and illegal at others
(it would send \u0000 down the wire). This is now fixed: because SOAP
only supports UTF8 and UTF16 encoding, the encoding process is easier
than for, say Xerces. A big hand to Jens Schumann for his effort!

We are also pleased to see Doug Davis committing again, backporting
some changes made to Axis for IBM's ETTK product. Specifically, there is
now a plug in mechanism to respond to ?wsdl and other queries made of a
service endpoint, so you can now define your own handlers for these
requests. Hopefully he will have other interesting additions to make in
the near future...

There have been now obvious "why didn't we see that" defects reported
against Axis1.1 yet, though one late breaking change regarding timeouts
is troublesome. In Axis1.0 there was no timeout waiting for responses at
all, which is wrong. In Axis1.1 the timeout was set to 60 seconds, which
is proving too short for some services. Although end users can set it,
the setting mechanism is Axis-specific, and so not compatible with other
JAX-RPC implementations. We need to come up with a more compatible
mechanism and perhaps increase the default timeout to a few minutes.

Editor: Susantha Kumara

Now the Axis C++ enables a web services developer to deploy web
services written in C++.

Axis C++ team is happy to announce the C++ implementation of SOAP
engine. The server side implementation is available and client side on
the way. The C++ based SOAP engine adopts most of Axis Java architecture.
However it features several architecture changes geared for performance.
Notably Axis C++ uses a web service wrapping concept that solves the
need of type mapping and dynamic loading that leads to performance.
Currently wrapper class generation tool is used for deployment of web
service classes which cuts down the effort needed by the web service
developer. Some other variants of this wrapper class generation tool are
planned for deploying C, COM and CORBA components as web services.
Modules, including the currently functional Apache web server module for
Apache 1.3, are being developed that allow Axis C++ to be plugged in to
popular web servers such as Apache and Microsoft IIS.

Listed below are the current set of features of Axis C++ server side
SOAP engine.

Partial support for both SOAP 1.1 & 1.2 Supports all xml basic types
Supports Complex types and arrays Deployment tool that converts C++
classes to dynamically deployable Libraries The Handler architecture
same as Axis Java WSDD based deployment same as Axis Java Supports RPC
style web services Test suite for interoperability tests

The Handler architecture with the WSDD based deployment concept makes
Axis C++ a highly configurable and extensible SOAP engine. The WSDD in
combination with the handler architecture allows pluggable handlers that
enables dynamic configuration of the Axis engine.

In contrast to Axis java, the C++ implementation adopts a pull
mechanism for XML parsing that leads to performance.

Axis C++ provides an API for adding transport modules which allows Axis
to work with multiple transport protocols. The current transport module
for Apache HTTP server is written for this API. This API depicts
XML-Pull parsing nature of Axis C++.

The initial release of Axis C++ 1.0 is expected to be out in mid
September with following features,

Full SOAP 1.2 support WSDL2C++ and WSDL2C prototyping tools. A fully
functional Wrapper Class generator Suite Portability of code base for
Windows/Linux/FreeBSD/Solaris/AIX Web server plug-ins for Apache, IIS
and Tomcat Comprehensive documentation and Samples XML pull parser
integration, proper error handling, Web interface to Axis documentation
and unit tests.


[1] - http://ws.apache.org/axis/


WS SOAP
========

WS WSIF
========

WS WSIL
========

WS XML-RPC
===========

We could not hear the July news from SOAP [1]. WSIF [2]. WSIL [3] nor
XML-RPC [4] Project Team. I hope to hear the wonderful news in the next
newsletter -- by Tetsuya Kitahata


[1] - http://ws.apache.org/soap/
[2] - http://ws.apache.org/wsif/
[3] - http://cvs.apache.org/viewcvs.cgi/*checkout*/xml-axis-wsil/java/README.htm
[4] - http://ws.apache.org/xmlrpc/

---------------------------------------------------------------------

Apache XML Project
===================

Apache XML Project - General
=============================

We've had a quarter with a fair bit of general activity. The XMLBeans
product has been accepted into incubation by the project as a whole. The
proposal generated a great level of discussion amongst the xml project
community, and ended in a positive result, with a clear understanding of
what issues the xml community feel need to be addressed during the
incubation process.

Issues needing attention:

The xml-security sub-project is starting work on C++ and Java
implementations of the W3C XML Encryption standard. Whilst not
implementing encryption algorithms directly, we will be making use of
other libraries that have such functionality.

After discussions with various parties within Apache, the xml-security
team understands that working on such an implementation will not cause
any export issues provided :

Only source code is released (i.e. no compiled versions of the
libraries can be made available). An e-mail is sent to Bureau of
Industry and Security (BIS) informing them of the location of the code
available for download. The format of this email can be found at
http://www.bxa.doc.gov/encryption/PubAvailEncSourceCodeNofify.html .
We seek the endorsement of the board for this approach, and would ask
who such an e-mail should come from.


[1] - http://xml.apache.org/


XML Axkit
==========

Editor: Jorg Walter

On the 29th of July, AxKit 1.6.2 was released. It is a collection of
many bug fixes, especially regarding charset/encoding issues and
processing order of AxAdd*Processor directives. AxKit now runs fine with
Perl up to 5.8.0. Some features were added, most interestingly attribute
value interpolation in XSP pages. Also, now we have a much improved test
suite which is run every night to ensure nothing breaks. You can read
the full announcement [1].

Meanwhile, our plans for AxKit 2.0 are getting more publicity, so here
is a preliminary overview of what that release will bring us:

AxKit 2.0 will be designed for mod_perl 2.0 exclusively. We will keep
the 1.x tree and fix bugs in there for mod_perl 1.x users, but major
development will happen in the AxKit 2.0 branch once it exists. One of
the most important features of the AxKit 2.0 release is a completely new
processing pipeline system, which allows you to configure processing,
caching and tracing in any combination you like. This is good news for
all XSP-after-XSLT users, now you can finally get partial caching. It is
very likely that we will overhaul the configuration system as well,
since pipeline configuration is getting hairy for many cases.

We do not yet have a definite timeline, and it is quite likely that we
will release AxKit 2.0 after mod_perl 2.0 is released, so don't hold
your breath. AxKit 1.x is not yet abandoned, and we expect another
release or two until then. You may want to take a look at the Petal
templating language, people say they've seen Matt sneaking around that
module for some time... :-)

For more information, see the Axkit website [2].


[1] - http://axkit.org/cgi-bin/ezmlm-cgi?3:mss:7028:200307:dhbfgcdobebkecpillig
[2] - http://axkit.org/


XML Batik
==========

The Batik project had a release in July just prior to the SVG Open
conference in Vancouver. The release came with a fairly large number of
bug fixes, improvements and a lot of work on the test infrastructure. We
will likely do a patch release in September as there have been a couple
important improvements done by Thomas DeWeese after the release and
there are a few regressions to patch.

For more information, see the Apache Batik website [1].


[1] - http://xml.apache.org/batik/


XML Commons
============

Editor: Shane Curcuru

The xml-commons project has made slow and quiet progress. The Xalan-J
and Xerces-J committers are collaborating on the xml-apis code to
maintain a branch that can be used to pass the JAXP 1.2 TCK for their
projects. We hope to make new maintenance releases soon of both the
resolver and which utilities, which just need some docs/release manager
volunteer time.

For more information, see the XML-Commons website [1].


[1] - http://xml.apache.org/commons/


XML FOP
=========

Almost a year after the last release the FOP team released version
0.20.5 of XML-Apache's Formatting Objects Processor on July 18th [1].
This is the last planned release from the maintenance branch. In
addition to supporting this new version on our FOP mailing lists, the
team is also working on the redesign and coding for our future 1.0
release. The distribution directory has been migrated to the new
location to make the downloads mirrorable [3] - which seems to work well
according to the Apache Stats made by Vadim Gritsenko where he recently
added FOP [4]. Although the new FOP logo [5] has been voted some time
ago there's still some tweaking needed [6].

For more information, see the Apache FOP website [2].


[1] - http://marc.theaimsgroup.com/?l=xml-apache-announce&m=105855086130731&w=2
[2] - http://xml.apache.org/fop/
[3] - http://www.apache.org/dev/mirrors.html
[4] - http://www.apache.org/~vgritsenko/stats/projects/fop.html
[5] - http://www.tkachenko.com/fop/logocontest/fop_logo-revised-Tobias-Muller.jpg
[6] - http://marc.theaimsgroup.com/?l=fop-dev&m=105975342320162&w=2


XML Forrest
============

Editor: Jeff Turner

"Forrest" [1]. for those who don't know, is an XML-based documentation
system built on Cocoon, used to build sites like 'The Apache XML
Website': http://xml.apache.org/ [2]

Forrest is currently in a stable phase, waiting on some Cocoon
improvements before a 0.5 release is made. Significant progress has
been made since 0.4. Most notably, the monolithic sitemap has been
divided into functional categories and logical layers, with the aim of
making Forrest sites easier to maintain, and new features easier to add
[3]. There are numerous new features, including:

o Ability to generate a single PDF/HTML of the entire site
o New flexible tab/menu system [4]
o Numerous skin improvements, including Javascript-controlled menus
o A new pure CSS variant of standard skin.
o DTD improvements (v11 replaced with v12, and v20 in the works)
o Wiki support :demo [5]
o Improved PDF output
o About 70% faster, thanks to the new command-line interface in Cocoon

Forrest gained two new committers, Juan Jose Pablos, and Leo Simons
(who wrote a Maven plugin, waiting to be checked in). In addition, all
Cocoon committers were granted karma to Forrest CVS, in recognition of
the close ties between these projects.

Tentative plans for the next release include:

o adopting XHTML 2 as a standard intermediate format
o adopting RELAX NG as a schema format
o developing a simple XSLT-based plugin system for defining new tags
o make site development much faster by avoiding the creation of a
temporary webapp directory
o exploiting the numerous features in the upcoming Cocoon 2.1 release

Join us on forrest-dev@xml.apache.org [6] if you have questions or
would like to participate.


[1] - http://xml.apache.org/forrest/
[2] - http://xml.apache.org/
[3] - http://xml.apache.org/forrest/sitemap-ref.html
[4] - http://xml.apache.org/forrest/linking.html
[5] - http://cvs.apache.org/~jefft/forrest/samples/wikirenderer-site/
[6] - mailto:forrest-dev-subscribe@xml.apache.org


XML Xalan-C++
==============

Xalan-C 1.6 was released on 11 August. Highlights include:


o "Sane includes" changes.
o Bug fixes.
o FreeBSD and NetBSD ports
o Faster UTF-8 and UTF-16 serializers.

For more information, see the Xalan-C++ Project website [1].


[1] - http://xml.apache.org/xalan-c/


Xalan-J/XSLTC
==============

Xalan-J 2.5.1 was released in early June. The release included:

o documentation updates and bug fixes (see README file [1] )
o performance patches to the serializer and to XSLTC
o An alternate binary distribution which contains XSLTC and
Xalan-Interpretive in separate jar files. See the download page [2]
for more information on the packaging in the two distributions.

A great deal of effort in the quarter was spent improving performance
for the 2.5.1 release and beyond in the current version in CVS. The
improvement has been noted by some of our users, which means that it is
often more than a few percent. Finally, one new committer, Igor Hersht,
was accepted into the subproject.

For more information, see the Xalan-J website [3].


[1] - http://xml.apache.org/xalan-j/readme.html
[2] - http://xml.apache.org/xalan-j/downloads.html
[3] - http://xml.apache.org/xalan-j/


XML Xerces-C++
===============

Good progress being made. 2.4.0 planned for release in the autumn with
new features including persistent grammars. No new committers.

For more information about Xerces-C++. please visit our website [1]


[1] - http://xml.apache.org/xerces-c/


XML Xerces-J
=============

Xerces-J 2.5.0 was released in late July. As well as the usual plethora
of bugfixes, this release marked the completion of Xerces-J's PSVI/XML
Schema Component Model support via implementation of annotation
components. The product was also upgraded to conform to the latest DOM
level 3 Core and Load/Save Working Drafts, and an experimental XInclude
partial implementation was added. Finally, one new committer--K
Venugopal--was accepted into the subproject.

For more information, see the Xerces-J Project website [1].


[1] - http://xml.apache.org/xerces2-j/


XML Xerces-P
=============

Xerces-P made an experimental 2.3 release. This included support for
handling the config.status file of Xerces-C to improve cross platform
support. Two announcements were made from users who successfully
compiled the 2.3 release under Windows, however no binary release for
windows is available yet.

For more information, see the Xerces-P Project website [1].


[1] - http://xml.apache.org/xerces-p/


XML Xindice
============

Xindice is still trying to put together the 1.1 release, so far with
mixed results and a couple of failed attempts. The good news is that the
community has got two new committers: Vadim Gritsenko and Kevin O'Neill
joined Xindice in late July, and results are encouraging, with
discussions and CVS commits flowing at a very good rate.

For more information, visit the Xindice website [1].


[1] - http://xml.apache.org/xindice/


XML XML-Security
=================

The XML-Security sub-project has just release version 1.0.0 of the C++
library, supporting the W3C XML Digital Signature standard. Work will
now move to creating a C++ implementation of the XML Encryption standard.

Work continues in the Java library to further develop encryption
support.

There has also been a fair amount of discussion around the potential
legal ramifications for Apache of releasing a library that makes use of
encryption algorithms. (See legal issues above.)

For more information, see the XML-Security website [1].


[1] - http://xml.apache.org/security/

---------------------------------------------------------------------

PHP Project
============

We could not hear the July news from PHP Project Team, however, php
project has a nice news release system. See the PHP Website for more
information [1]. -- by Tetsuya Kitahata


[1] - http://www.php.net/

---------------------------------------------------------------------

The Apache Infrastructure Team Report
======================================

Editor: Noel J. Bergman

The major changes were the addition of Minotaur as the new CVS server,
the removal of icarus (the previous CVS server), and the fact that the
ASF is now located in a new co-location facility with its own rack and
cage. Minotaur is a powerful system, and may allow new uses, e.g.,
moving the Cocoon wiki to Apache hardware, allowing Jakarta to run parts
of its site on Tomcat, etc. Those possibilities are still being
investigated. With the new co-location facility, the ASF is open for
donations of rack mountable components, e.g., new servers.

---------------------------------------------------------------------

New Committers
================

o Juan Jose Pablos : cheche at apache.org (Forrest)
o Reinhard Potz : reinhard at apache.org (Cocoon)
o Geoff Howard : ghoward at apache.org (Cocoon)
o J Aaron Farr : farra at apache.org (Avalon)
o Toshiyuki Kimura : toshi at apache.org (WS Axis)

......... Congratulations!!


---------------------------------------------------------------------

Readers' Voice
================

o Just a quick "thank you" for the newsletter. Always helpful and
a pleasure to read! -- Axel.
o Wow - you guys rocks ! Keep up the good work. And I really do hope
that this will keep its 'all things java and xml' scope -- Dirk
o It has been already said, but the last newsletter was *awesome*! :-)
I saw many non-jakarta projects on it, and that was very nice indeed.
It makes different projects understand what's happening to each other.
-- Nicola
o Agreed, Nicola! :-) -- Noel
o Superb work, I'm really curious what the new Apache Newsletter brings.
-- Erik
o "Best newsletter ever!" -- Glen
o Just another "job well done" email on the newsletter. -- Daniel

---------------------------------------------------------------------

----------------------------------------------------------
The Apache Newsletter -- http://www.apache.org/newsletter/


Posted by Tetsuya Kitahata at 10:21 AM

July 01, 2003

Jakarta Newsletter Issue #9

Jakarta Newsletter
Issue: 9
Date: May-June 2003
Url: http://jakarta.apache.org/site/news/200305.html

It's been another good year at the JavaWorld Tools Awards for Apache. Xerces2 Java Parser 2.4 from the Apache XML Project won the Best Java-XML Tool award and Apache Ant 1.5 developed by the Apache Ant Project won the Most Useful Java Community-Developed Technology. Good work!

W3C has issued SOAP 1.2 as a recommendation. This means that the SOAP 1.2 specification is now (effectively) a web standard. Apache software related to SOAP can be found in the Web Services and XML projects. The press release is here.

This newsletter is the second wiki-built newsletter. See the http://nagoya.apache.org/wiki/apachewiki.cgi?JakartaNewsletterDrafts for more details. Also, I sent the announcements to all the developers' list in jakarta. It was a bit annoying I suppose, however, this newsletter contains a lot of news from various projects, including Jakarta Related Projects.

Note:
Apache Ant, Avalon, James, Maven, Incubator, DB (OJB/TORQUE) are not subprojects under Apache Jakarta any longer, however, we really appreciate to hear the news from the Jakarta Related Projects. I strongly hope/believe this "newsletter" would be able to become one of the *liaison* for the various projects in ASF.

As always, I want to thank 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.

Editor: Tetsuya Kitahata

Special Thanks: Robert Burrell Donkin

Contents
Jakarta General
Jakarta Commons General
Jakarta Commons EL
Jakarta Commons FileUpload
Jakarta Commons DBCP
Jakarta Commons HttpClient
Jakarta Commons Lang
Jakarta Commons Math
Jakarta Jetspeed
Jakarta JMeter
Jakarta Log4j
Jakarta Lucene
Jakarta Poi
Jakarta Struts
Jakarta Tapestry
Jakarta Tomcat
Jakarta Turbine
Jakarta Velocity
Apache Ant Project
Apache Avalon Fortress
Apache DB OJB
Apache Httpd WebServer Project
Apache James Project
New Committers
Products avaliable as of the end of June, 2003


Jakarta General
" Ideas, suggestions, and comments on the overall Jakarta project "

Editor: Tetsuya Kitahata

Discussions on general mailing list have been fairly light-weight these 2 months. The Main page of the Jakarta Site has been updated in order to arrange the "Jakarta-Related" projects properly. Now, Jakarta website has renewed to become one of the most powerful "Java-Portal" sites. The JavaOne Conference was held in June, and there seemed many atendees from jakarta participants.

As Sun Microsystems set up the http://java.net/ site, there was alot of talk surrounding this issue.

Jakarta Tapestry, which had been longed to become a Top Project in Jakarta, finally joined in the Jakarta Umbrella in May. The first proposal was made at General Mailing List in October last year by Howard M. Lewis Ship, so it took about a half year. We look forward to the Tapestry Teams playing a more active part in Jakarta.


Jakarta Commons General
" creating and maintaining reusable Java components "

Editor: Robert Burrell Donkin, Tetsuya Kitahata

An OnJava Article [1] covering the components in Jakarta Commons [2] has been published. If you've ever wondered about what's all these components do, this is a good place to start. Due to the diverse nature of the commons group, this section has been split up to make it easier to pick out the topics of interest. These months' stories come from the following:


[1] - http://www.onjava.com/pub/a/onjava/2003/06/25/commons.html
[2] - http://commons.apache.org/

Jakarta Commons EL
Editor: Robert Burrell Donkin

The Commons Team is pleased to announce the 1.0 release of commons-EL. EL is the JSP 2.0 Expression Language Interpreter from Apache

For more information see the EL component home page [1].


[1] - http://commons.apache.org/el.html


Jakarta Commons FileUpload
Editor: Robert Burrell Donkin

The Commons Team is pleased to announce the long-awaited release of commons-fileupload 1.0. Good work Martin!

For more information see the FileUpload component home page [1].

Thanks to Arnaud Vandyck FileUpload now is available as a Debian Package [2].


[1] - http://commons.apache.org/fileupload/
[2] - http://packages.debian.org/unstable/libs/libcommons-fileupload-java.html


Jakarta Commons DBCP
Editor: Serge Knystautas

There has been renewed interest in DBCP, which has sparked a requirements discussion. The list of bugs and tasks for the next release are becoming clear, as well as how to extend DBCP moving forward. We hope to have a good bug fix in the next month or two, and then have a major release later this year.

For more information see the DBCP component home page [1].


[1] - http://commons.apache.org/dbcp/


Jakarta Commons HttpClient
Editor: Michael Becke

HttpClient has continued to be busy. 2.0 beta 2 was released July 2 and a final 2.0 version should follow shortly.

2.0 branch will be created in early July so that 2.1 development can begin. The plan for 2.1 is coming together (2.1 release plan thread [1]) and will provide some significant refinement of the 2.0 release.

Adrian Sutton was warmly welcomed into the committer team in early June and has continued to be a valuable member of the HttpClient community.

For more information please see the HttpClient component home page [2].


[1] - http://archives.apache.org/eyebrowse/BrowseList?listName=commons-httpclient-dev@jakarta.apache.org&by=thread&from=367820
[2] - http://commons.apache.org/httpclient/


Jakarta Commons Lang
Editor: Robert Burrell Donkin

The lang team has been very busy pushing towards the 2.0 release [1]. The new 2.0 release should be cut very soon now (Release of Commons Lang 2.0 / take 2 [2]).

For more information, see the Commons-Lang website [3].


[1] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=105729197700488&w=2
[2] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=105744550726520&w=2
[3] - http://commons.apache.org/lang/


Jakarta Commons Math
Editor: Phil Steitz

Commons-math is a new Commons Sandbox component. The goal is a small, self-contained, ASL-licensed library of utilities addressing common math/stat programming problems that can't be solved directly using the JDK or the extensions in commons-lang.

Here is a sample of the kinds of things supported by the initial code base:


Computing means, variances and other summary statistics for a list of numbers
Fitting a line to a set of data points using linear regression
Solving equations involving real-valued functions (i.e. root-finding)
Performing statistical significance tests
Solving systems of linear equations
Generating random numbers with more restrictions (e.g distribution, range) than what is possible using the JDK
Generating random samples and/or datasets that are "like" the data in an input file
Finding a smooth curve that passes through a collection of points (interpolation)
Miscellaneous mathematical functions such as factorials and binomial coefficients

Suggestions for new components or enhancements to existing functionality are always welcome!

For more info, see the Commons-Math website [1].


[1] - http://commons.apache.org/sandbox/math/



Jakarta Jetspeed
" user customizable Java Enterprise Information Portal, using Java and XML and based on Turbine framework "

Editor: Tetsuya Kitahata

Jakarta Jetspeed Team realeased the Jetspeed 1.4 Beta 4 on 27 April 2003, and made a lot of changes after the Beta 4 Release [1]. Now, our team is planning to release the official final release 1.4, long overdue however, around the end of July or thereabouts.

Jakarta Jetspeed has grown in recognition and influence as an internationalizable portal site system. The Jakarta Jetspeed Team welcomes any input, feedback or comments.

For more information, see the Jakarta Jetspeed website [2].


[1] - http://jakarta.apache.org/jetspeed/site/changes.html
[2] - http://jakarta.apache.org/jetspeed/site/


Jakarta Jmeter
" Pure Java desktop application designed to load test functional behavior and measure performance "

Editor:

JMeter has grown quickly in the past year, with new releases coming out about every 6 months. Right now, JMeter 1.9 is nearing completion (see the JMeter-1.9RC2 download page [5]). JMeter has become a full-fledged client/server testing tool, useful for both stress testing and functional testing of web apps, databases, ftp, soap services, ldap, and more.

In the past few months, several articles have been written about JMeter:


Load Testing your Applications with Apache JMeter - By Keld H. Hansen 2003-02-05 - [1]
Using JMeter - By Budi Kurniawan 2003-01-15 - [2]
Regression Testing With JMeter - [3]
AN OVERVIEW OF LOAD TEST TOOLS - By J. BURET and N. DROZE 2003-02-27 - [4]

For more information, visit our pages / Jakarta JMeter Homepage [5].


[1] - http://javaboutique.internet.com/tutorials/JMeter/
[2] - http://www.onjava.com/pub/a/onjava/2003/01/15/jmeter.html
[3] - http://www.phpbuilder.com/columns/bommarito20030610.php3
[4] - http://clif.forge.objectweb.org/load_tools_overview.pdf
[5] - http://jakarta.apache.org/jmeter/


Jakarta Log4j
" Log4j allows developers to control which log statements are output with arbitrary granularity "

Editor: Mark Womack, Ceki Gülcü

Scott Deboy and Paul Smith have been enthusiastically voted in as log4j committers. They have done extensive work on improving chainsaw and other parts of log4j. In relation with this vote, Mark Womack stated:


With all of our new contributors, I think it is a validation of the sandbox
that we started. It is an excellent way to let people contribute, get
familiar with the environment, process, etc. And then when merit is
demonstrated, granting appropriate committer access. I like that we set up
that process. I think it has really rejuvenated and helped the log4j
development community, affecting my previous commentaries. I hope it
continues and that more people out there will take advantage of it, start
the process for themselves, and get involved at whatever level they
can/want.

Chainsaw v2 has been moved out of the sandbox into log4j main.

Certain operations on Loggers are now made using ReaderWriterLocks which allows simultaneous read operations but only one write operation. This should significantly improve logging throughput in heavily loaded server environments.

Rolling can now be triggered based on time or size as was already the case in log4j 1.2. However, the new architecture allows for much more variation in the timing of the rollover and the actions taken during rollover (i.e on the fly compression, renaming, moving). The new architecture was suggested a long time ago by James P. Cakalic. A similar design can be found in the Avalon Logkit.

We have started to closely collaborate with the Avalon project in order to better cater for their needs.


Jakarta Lucene
" Lucene provides A high-performance, full-featured text search engine "

Editor: Otis Gospodnetic

Lucene is still at version 1.3 RC1. Last month a Lucene JSP taglib [1] was contributed to the Lucene project.

A new article entitled "Parsing, indexing, and searching XML with Digester and Lucene" [2] was published by IBM developerWorks.

The LARM web crawler project has moved from the Lucene Sandbox to SourceForge [3].


[1] - http://cvs.apache.org/viewcvs/jakarta-lucene-sandbox/contributions/taglib/
[2] - http://www-106.ibm.com/developerworks/library/j-lucene/
[3] - http://larm.sourceforge.net/


Jakarta Poi
" APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format "

Editor: Tetsuya Kitahata

We updated the build system from Crysalys Centipede to XML-Forrest. Thanks to all the contributors to XML-Forrest. We are preparing the release of the Poi 2.0-pre2 within a few days. Poi TNEF -- Java implementation for MS-TNEF mail extraction -- will join to the Poi Team contributed by Amichai Rothman (TNEF [1]). HDF (Horrible Document Format, Microsoft Word compatible format reader/writer), inactive for some time, has become active again due to our excellend developers.

The other prominent news in the last 2 months:


EXTSST record implemented
Cloning, Shifting, and Merging Updates (Cloning Fixes, Merged Region Fixes, Shift Rows Enhancement)
POI 2.0-pre1 Released
Shared Formulas now Supported
Added GreaterEqual(>=), LessEqual(<=) and NotEqual(<>) to Formula Parser
Added GreaterThan(>) and LessThan(<) functionality to formulas
POI Build System Updated
font names can now be null

For more information, see the Jakarta-Poi website [2] and Poi-News [3].


[1] - http://www.freeutils.net/source/jtnef/
[2] - http://poi.apache.org/
[3] - http://nagoya.apache.org/poi/news/


Jakarta Struts
" A model-view-controller framework for constructing web applications with servlets and JavaServer Pages "

Editor: Tetsuya Kitahata

The Struts team is proud, and extremely pleased, to announce the Final release of Struts 1.1. This release includes significant new functionality, as well as umerous bug fixes which were reported against the previous release, and supersedes the earlier 1.0.2 version as the latest official release of Struts from the Apache Software Foundation.

Both source [1] and binary [2] distributions, including a minimal binary distribution, are available through the usual Apache mirror sites. Please remember to verify the signatures of the distribution using the keys found on the main Apache web site when downloading from a mirror.

Also, as of June 25, 2003, there were 2744 subscribers to STRUTS-USER (plus an unknown number who read it through newsfeed mirrors). It has come to be the largest user mailing list at Jakarta, exceeding TOMCAT-USER that has about 2400 subscribers.

For more information, see the Struts web site [3].


[1] - http://jakarta.apache.org/site/sourceindex.cgi
[2] - http://jakarta.apache.org/site/binindex.cgi
[3] - http://struts.apache.org/


Jakarta Tapestry
" Tapestry provides web framework which seeks to find greater harmony between web designers and developers "

Editor: Howard M. Lewis Ship

The Jakarta Tapestry team is tickled pink by the ascension of Tapestry to a full Jakarta sub-project [1]. The first beta release of Tapestry has been released [2]. Tapestry distributions are now properly mirrored (now more SourceForge downloads!). A second beta is expected soon.

The Tapestry user list currently stands at 250 subscribers (as of July 5, 2003).

Christian Sell has written an article [3] comparing the WebWork and Tapestry frameworks. The article was published in the German language magazine Javamagazin [3]. The text of the article is available (in German) at [4], and its very favorable to Tapestry. Tapestry continues to gain mind-share.

Editor: Richard Lewis-Shell

May saw Tapestry accepted as a full-fledged Jakarta project [1] - the incubator is behind us! Since then Tapestry has continued to thrive, making solid progress towards the first release under the Jakarta banner - 3.0. A feature complete beta-1, and a quick followup beta-1a, have been released [2], with beta-2 imminent. beta-2 will feature a number of bug fixes, and small enhancements over beta-1a, and Mind Bridge's converted code enhancer from BCEL to Javassist. Attention is starting to turn to 3.1 with a refactoring to Howard Lewis Ship's HiveMind [5] sandbox project on the cards.

In related news, Geoff Longman has made an early version of Spindle [6] available (the Eclipse IDE plugin for Tapestry) for Tapestry 3 looking quite unlike previous versions of Spindle, but showing great potential.

For more information, see the Jakarta Tapestry website [7].


[1] - http://jakarta.apache.org/site/news.html#20030526.1
[2] - http://jakarta.apache.org/site/news.html#20030602.1
[3] - http://www.javamagazin.de/
[4] - http://www.dynabean.de/article/Typologie.html
[5] - http://commons.apache.org/sandbox/hivemind/
[6] - http://spindle.sourceforge.net/
[7] - http://tapestry.apache.org/


Jakarta Tomcat
" Tomcat is the official Reference Implementation of the Servlet 2.* and JavaServer Pages 1.* technologies "

Editor: Remy Maucherat

The Tomcat team is hard working on Tomcat 5, with the recent release of Tomcat 5.0.3, and the upcoming Tomcat 5.0.4 release (another alpha). The quality of Tomcat 5.0.3 seems to be quite high for an alpha (which isn't that surprising given it is a direct evolution of the Tomcat 4.1.x codebase), so we encourage fearless users to test drive it and report issues.

Planned July builds:


Tomcat 4.1.25: bugfix only release
Tomcat 5.0.4 and 5.0.5: bugfix and polish over 5.0.3
mod_jk 1.2.5: mod_jk 1.x bugfix release

For more information, see the Jakarta-Tomcat Website [1].


[1] - http://tomcat.apache.org/


Jakarta Turbine
" a servlet based framework that allows developers to quickly build secure web applications "

Editor: Henning Schmiedehausen

Since its last release on Dec, 6 2002, the Turbine Web Application Framework has undergone some significant improvements and changes.

Most of the sore points (Logging, Configuration, Component Integration) have been addressed, improved and resolved. Currently, the Turbine Developers are working hard towards the next release which is scheduled for Mid to End of July. A first Release Candidate (RC) is to be expected around July, 7th.

Changes from the last release include:


Usage of commons-logging everywhere for unified logging of all parts of an application
Centralized configuration with the ability to configure from XML files and JNDI servers
Multiple new security implementations, including LDAP and a flexible, database driven security service
Crypto Service for various kinds of encryption (including Unix crypt)
Completely overhauled and reworked input validation service (Intake)
Many bug fixes and code cleanups

An Avalon Component Service is available which allows users to integrate Avalon components into Turbine applications. The Turbine Development Team recommends using this new Service for accessing the Torque object persistence framework which is the foundation for some of the Turbine Services such as Security Service and Scheduler Service.

For more information see the Homepage of the Jakarta Turbine Project [1].


[1] - http://jakarta.apache.org/turbine/


Jakarta Velocity
" Velocity is a general purpose Java-based template engine "

Editor: Will Glass-Husain, Nathan Bubna

After a long period of quiet, the Velocity developer community has recently gained some new momentum. Work has begun on a patch to add floating point number capability to the velocity syntax. Other changes under discussion include


Support for defining maps
New rules for whitespace gobbling
"Local Scope" for variables, e.g. in macros
Filters to munge text
Multi-line #set directives, Strings and ArrayList definitions

Also, the VelocityTools subproject has been stable for months now and is nearing first release. Among other things, it provides good support for rapid, clean development of web applications with Velocity and optional integration with the Struts framework. Anyone developing web applications with Velocity needs to check this out.

More info is on the velocity-dev list. Please come and share any comments you might have!


Apache Ant Project
" Apache Ant is a Java-based build tool "

Editor: Conor MacNeill, Steve Loughran

In addition to Ant's Java World Editors' Award, the Apache Ant has also been awarded the Java Pro Readers' Choice award for Most Valuable Java Deployment Technology.

Anyone upgrading to Java1.4.2 should note that breaks, on account of the entry point to the javah code being moved. This is fixed in CVS, and may merit a release of an update of the 1.5.x branch simply to reduce developer grief. We must actually credit Sun for giving us an early warning of the change, but cannot fail to observe that leaving entry points alone would have been better.

In the Ant core itself work on the new task loading mechanism is progressing; once this is stable it should improve how tasks load. To address with the related increase in .jar files that come from splitting optional.jar up by dependency Conor has recently added an alternate startup mechanism, Launcher, which should offload much of the work of the surprisingly troublesome startup scripts into the Java code itself. With a single means of adding ANT_HOME/lib jars to the classpath, finding the JDK and such like, life should be easier for everyone, especially those who insist on installing Java in directories with spaces in them.

Ant is gearing up for the 1.6 release. There will be a number of new features and improvements. There is still a lot of development to do so it's a month or two away at this stage. There are things such as the import task, xdocs documentation generation, possible type polymorphism, etc. There are nightly builds to try now if you want to see what sort of features are coming and you want to test them out.

There is a new task allowing tasks to be created from BSF scripts. It's a piece of a larger, interesting discussion about scripting within Ant. One approach is speculating about the use of scripting based alternatives to the Ant XML representation that still leverage the tasks in the Ant codebase.

There is a new book on Ant in the stores, "Extreme Programming with Ant", by Niemeyer and Poteet. Covering Ant 1.5.3, JUnit, XDoclet and related tools with an XP build and deploy focus. It sounds like an interesting read.


Apache Avalon Fortress
Editor: Anton Tagunov

The long awaited Fotress 1.0 has finally been released.

Implementing full support for Avalon 4 interfaces Fortress provides a straightforward upgrade path from the outdated ECM Avalon container.

The most lightweight of the modern Avalon containers Fortress is easy to embed into managed environments like servlet engines. It features high scalability and facilates creation of application-specific avalon containers.

The difference that all ECM users will notice is the decomission of role files -- this information is now expressable via javadoc tags in component's source.

For more information, see the Avalon Fortress website [1].


[1] - http://avalon.apache.org/excalibur/fortress/


Apache DB OJB
" Object/Relational mapping tool that allows transparent persistence for Java Objects against relational databases "

Editor: Thomas Mahler

OJB is in the process of finalizing a 1.0 release. We plan to have a new release candidate in July and hope to get out the 1.o release by end of July. In the last months OJB attracted more public attention.


There is an article at OnJava: [1]
There has been a technical workshop on Struts and OJB at JavaOne: [2]
Several books on opensource development now cover OJB in some detail

For more information, visit the Apache DB OJB (object relational bridge) website [3].


[1] - http://www.onjava.com/pub/a/onjava/2003/01/08/ojb.html
[2] - http://servlet.java.sun.com/javaone/sf2003/conf/sessions/display-3368.en.lite
[3] - http://db.apache.org/ojb/


Apache Httpd WebServer Project
Editor: Robert Burrell Donkin

May saw a new release in the web's most popular family of web servers. Apache HTTPD 2.0.46 is the latest and greatest version and is now available for download.

For more details see the HTTPD WebServer Project Home Page [1].


[1] - http://httpd.apache.org/


Apache James Project
" Apache James offers a mail and news server, supporting Mailets, SMTP, POP3, NNTP, and soon..IMAP "

Editor: Serge Knystautas

The James team has been on a roll lately, incorporating several long-outstanding feature requests into the stable 2.X release branch. The biggest new feature is a custom class-loading system, so custom mailets and matchers do not need to be built and included within James itself. This will allow much faster and easier development of email based applications.

James was featured this month on IBM Developer works with two excellent articles by Claude Duguay. He first introduces "users to James" [1] and then gets into "building some custom mailets and matchers" [2].

Other recent changes include clarifying exception handling and adding the ability to configure how James should handle these unexpected errors. There have also been a large number of bug fixes, and we are rolling out releases almost every month. Some upcoming features include an enhanced mailing list system, better database connection pooling, and some improvements to the mailet API. The differences between the 2.X and the 3.X branch are gradually shrinking as features are being backported to the current stable branch.

Since becoming a top-level project (TLP), the James community continues to experience strong growth, this spring averaging over 12,000 downloads per month. Vincenzo joined us as a new ASF committer this month, and we plan to continue to grow the developer community. We have recently migrated our CVS and mailing lists to reflect our new TLP status, so please check the website if you want to subscribe or check out the source code.

For more information, visit the Apache James website [3].


[1] - http://www-106.ibm.com/developerworks/java/library/j-james1.html
[2] - http://www-106.ibm.com/developerworks/java/library/j-james2.html
[3] - http://james.apache.org/


New Committers
" New Committers welcomed to Apache "


Amichai Rothman: amichai at amichais.net (Jakarta-POI)
Yoav Shapira: yoavs at apache.org (Jakarta-Tomcat, Jakarta-log4j-sandbox)
Adrian Sutton: adrian at apache.org (Jakarta-Commons - HttpClient)
Jan Materne: jhm at apache.org (Ant)
Michal Maczka: michal at apache.org (Maven)
Vincenzo Gianferrari Pini: vincenzo at apache.org (James)
Tim Funk: funkman at apache.org (Jakarta-Tomcat)
Mark R. Diggory: mdiggory at apache.org (Jakarta-Commons - Math)
Anton Tagunov: atagunov at apache.org (Avalon)
Jeremy Ford: jford at apache.org (Jakarta-Jetspeed)
Tetsuya Kitahata: tetsuya at apache.org (Jakarta-Site2, Jakarta-POI)

Posted by Tetsuya Kitahata at 08:40 PM

May 01, 2003

Jakarta Newsletter Issue #8

Jakarta Newsletter
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

Contents
Alexandria
BCEL
Cactus
Commons
Commons CLI
Commons Codec
Commons File Upload
Commons Betwixt
Commons Digester
Commons BeanUtils
Commons Math
Log4j
Lucene
POI
Struts
Tapestry
Turbine


Alexandria
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/


BCEL
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/


Cactus
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


Commons
Commons CLI
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.


Commons Codec
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.


Commons File Upload
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.


Commons Betwixt
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):

http://nagoya.apache.org/eyebrowse/ReadMsg?listName=commons-dev@jakarta.apache.org&msgId=698963

http://nagoya.apache.org/eyebrowse/ReadMsg?listName=commons-dev@jakarta.apache.org&msgId=697486

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.


Commons Digester
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:

http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=105049382329507&w=2

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


Commons BeanUtils
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.


Commons Math
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!


Log4j
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


Lucene
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://nagoya.apache.org/eyebrowse/ReadMsg?listName=lucene-dev@jakarta.apache.org&msgId=657670

[2] http://nagoya.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


POI

Patch applied to allow setting of sheet order. [1]
Patch applied to fix issue with rewriting continuation records. [2]
Patch applied [3] to:
Provide PrintArea Support via NamedRegion References (i.e. Sheet1!$A$1:$B$2)
Refactored PrintTitles a bit to reuse built-in printarea commonalities (zero length fields, etc)
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://nagoya.apache.org/bugzilla/show_bug.cgi?id=17491

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

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

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

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

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

[7] http://nagoya.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://nagoya.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


Struts
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.


Tapestry
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


Turbine
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://nagoya.apache.org/eyebrowse/ReadMsg?listName=turbine-user@jakarta.apache.org&msgNo=14762

Posted by Tetsuya Kitahata at 08:41 PM

March 01, 2003

Jakarta Newsletter Issue #7

Jakarta Newsletter
Issue: 7
Date: January 2003
Url: http://jakarta.apache.org/site/news/200301.html

The month has been quite busy for apache folks, with new apache projects, new jakarta subprojects and talk of even more. In case you're getting concerned that its all talk here, at least Lucene, Ant and HttpClient are expecting releases in the near future.

As always, I want to thank 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.

Rob Oxspring

Contents
General
Commons
db.apache.org
Log4j
Lucene
POI


General
" Ideas, suggestions, and comments on the overall Jakarta project "

Editor: Rob Oxspring

Robert Simmons kicked of a debate over the use of forum software to make it easier for users to get involved with jakarta subprojects [1,2]. The Jakarta developers seemed united in preferring mailing lists and pointed out archives [3] and services such as gmane [4] for more casual use of the lists.

The Pluto subproject was proposed as a reference implementation of the Portlet API and was heavily discussed [5]. Relating to the portals theme, Charon was propsed ro implement the Web Services for Remote specification, although this recieved only a little discussion [6,7].

Dani Estermann asked for some advice on choosing a logging stratergy for future code. Some advocated using the JDK logging if Java 1.4 was guarenteed, others recommended using Log4j whatever the situation. It was also suggested that the use of a facade such as commons-logging should be limitted to situations where chioce is needed. Browse the archive for further detail [8].

Is it time for a new look Jakarta? Maybe a unified Apache site look and feel? Christoph Wilhelms suggested the use of his FakeForrest skin to give Jakarta a facelift [9]. This offers a Forrest[10] look a like and could act as a stepping stone towards the eventual use of forrest for the websites.

Finally, several people have been elected as new members of the Jakarta PMC [11], they are:


Nicola Ken Barozzi
Robert Burrell Donkin
Stephen Colebourne
Martin Cooper
Henri Gomez
John Keyes
Larry Isaacs
Otis Gospodnetic
Thomas Mahler
Remy Maucherat
Glenn Nielsen
Andrew C Oliver
Rob Oxspring
Martin Poeschl
Scott Sanders
David Sean Taylor
Glen Stampoultzis
Mladen Turk
James Turner
Henri Yandell


[1] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=305266
[2] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=309508
[3] - http://archives.apache.org/eyebrowse/
[4] - http://www.gmane.org/
[5] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=308677
[6] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=308715
[7] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=308716
[8] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=314971
[9] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=315699
[10] - http://xml.apache.org/forrest/
[11] - http://archives.apache.org/eyebrowse/ReadMsg?listName=general@jakarta.apache.org&msgNo=14080


Commons
Due to the diverse nature of the commons group, this section has been split up to make it easier to pick out the topics of interest. This months stories come from the following:


Codec
HttpClient

Codec
"definitive implementations of common encodings"

Editor: Tim O'brien

The codec project is alive again, and moving towards a release. Codec's short-term goals include: moving towards definitive implementations of common encodings such as Base64 and Hex, and developing a cohesive framework for expansion.


HttpClient
"HttpClient provides client side HTTP 1.0/1.1 connectivity to any Java component"

Editor: Jeffrey Dever

Release 2.0 Alpha 2!

After many months and a great resurgence of developers, the new build of HttpClient is finally here. The new group of developers has done extensive refactoring to move the project along the new vision. The code base has reached a significant level of maturity and we expect that another released build (possibly a beta) will be ready near the end of February

Also check out the new HttpClient logo on the website created by Jeff Dever with the Gimp!

http://commons.apache.org/httpclient/



db.apache.org
" Database Software

Editior: Martin Poeschl

The DB project was created to allow the collection of similar technologies into one larger subcommunity.

The following jakarta projects moved to the db project


ojb
turbine-torque
commons-sql

http://db.apache.org


Log4j
" a fast and flexible framework for logging application debugging messages "

Editor: Mark Womack

This month's edition contains items from December and January.

Initial implementations of Plugin, PluginRegistry, and Receivers were checked in for review [1]. Plugins will be part of the log4j v1.3 release. They allow developers to add functionality to log4j on a per LoggerRepository basis and are fully configurable via log4j configuration files. Receivers are an implementation of Plugin that will "post" remote logging events to the LoggerRepository the receiver is configured for.

There was a brief discussion started by Scott Klein about a new gui tool for viewing log4j logging events that cascaded into a discussion of possibly creating a viewer that combines the best aspects of the current log4j gui viewers, Chainsaw and LF5. This led to an informal decision to package Chainsaw and LF5 in their own executable jars, separately from the core log4j jar, for v1.3. [2]

Jay Funnell contributed the NetSendAppender[3]. This appender uses the Windows "NET SEND" command to transport log messages.

A new servlet package was added to contain log4j related classes that can be used within web applications. It contains a useful set of classes, and is expected to grow with future contributions. Initial contributions are: InitServlet, InitContextListener (both from Jacob Kjome) [4], ConfigurationServlet (Luther Birdzell) [5], and CookieMDCFilter [6].

A new selector package was added to contain implementations of the log4j RepositorySelector interface [7]. The RepositorySelector is a powerful device that allows for LoggerRepositories to be separated from each other, each maintaining their own space. The selector can be implemented to choose the active repository based on a specific criteria. An initial contribution from Jacob Kjome, ContextClassLoaderSelector [8], chooses the repository based on the context class loader and is compatible for use in Tomcat 4.1.X.

Like other Apache projects, wiki pages for the log4j project have been started, and are coming along nicely [9].

It was decided to created a log4j-sandbox cvs repository [10]. This cvs will contain new, experimental, and contributed log4j related code. Once proven, the classes will be considered for inclusion in the core log4j release. Initial candidates for filling the sandbox are the filter, selector, and servlet packages.

log4jMini, a compact version of log4j, was added to the log4j cvs [11]. The current version is out of sync with the changes in v1.2 and now that it is in cvs, developers can submit changes to make it v1.2 compatible [12].

Changes are planned for v1.3 release related to better memory efficiency within several log4j classes [13].

Creating a top level Apache project, logging.apache.org, is being explored [14]. The goal of this top level project would be to bring all of the log4X related logging frameworks under the ASF umbrella. Another major goal would be to implement cross-language/cross-platform logging within each of these frameworks. There was also some interesting discussion about the current state of log4j and how the logging.apache.org project would affect it [15].


[1] - http://marc.theaimsgroup.com/?t=103950495700003&r=1&w=2
[2] - http://marc.theaimsgroup.com/?t=103963431900001&r=1&w=2
[3] - http://marc.theaimsgroup.com/?t=103945762400007&r=1&w=2
[4] - http://marc.theaimsgroup.com/?l=log4j-dev&m=104335006426248&w=2
[5] - http://marc.theaimsgroup.com/?t=104022409200004&r=1&w=2
[6] - http://marc.theaimsgroup.com/?l=log4j-dev&m=104011113830842&w=2
[7] - http://marc.theaimsgroup.com/?t=103973290800001&r=1&w=2
[8] - http://marc.theaimsgroup.com/?t=103976602200003&r=1&w=2
[9] - http://nagoya.apache.org/wiki/apachewiki.cgi?Log4JProjectPages
[10] - http://marc.theaimsgroup.com/?t=104161963300006&r=1&w=2
[11] - http://marc.theaimsgroup.com/?t=104201771300001&r=1&w=2
[12] - http://marc.theaimsgroup.com/?t=104307344600004&r=1&w=2
[13] - http://marc.theaimsgroup.com/?t=103366200900007&r=1&w=2
[14] - http://marc.theaimsgroup.com/?t=104366626700004&r=1&w=2
[15] - http://marc.theaimsgroup.com/?t=104361737900003&r=1&w=2


Lucene
" A high-performance, full-featured text search engine "

Editor: Otis Gospodnetic

This month's notes come straight from Lucene's CHANGES.txt file. In addition to that I'll only mention that the Lucene team is preparing for packaging the first release candidate for the 1.3 release.

a. Queries are no longer modified during a search. This makes it possible, e.g., to reuse the same query instance with multiple indexes from multiple threads.

b. Term-expanding queries (e.g. PrefixQuery, WildcardQuery, etc.) now work correctly with MultiSearcher, fixing bugs 12619 and 12667.

c. Boosting BooleanQuery's now works, and is supported by the query parser (problem reported by Lee Mallabone). Thus a query like "(+foo +bar)^2 +baz" is now supported and equivalent to "(+foo^2 +bar^2) +baz".

d. New method: Query.rewrite(IndexReader). This permits a query to re-write itself as an alternate, more primitive query. Most of the term-expanding query classes (PrefixQuery, WildcardQuery, etc.) are now implemented using this method.

e. New method: Searchable.explain(Query q, int doc). This returns an Explanation instance that describes how a particular document is scored against a query. An explanation can be displayed as either plain text, with the toString() method, or as HTML, with the toHtml() method. Note that computing an explanation is as expensive as executing the query over the entire index. This is intended to be used in developing Similarity implementations, and, for good performance, should not be displayed with every hit.

f. Scorer and Weight are public, not package protected. It now possible for someone to write a Scorer implementation that is not in the org.apache.lucene.search package. This is still fairly advanced programming, and I don't expect anyone to do this anytime soon, but at least now it is possible.

g. Added public accessors to the primitive query classes (TermQuery, PhraseQuery and BooleanQuery), permitting access to their terms and clauses.


POI
"APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format"

Editor: Glen Stampoultzis

Rainer completed the HPSF documentation. It now includes general property set streams.

Carey Sublette let us know about an issue surrounding incompatibilities between how Excel processes unicode. Even though unicode is the standard according to the Excel97 Developers kit it seems that Excel sometimes allows invalid characters from the Cp1252 codepage. He plans on submitting a patch.

Jason Height has been trying to implement the DBCell and Index records.

Andy wrote up some details on how to refactor and complete the formula parsing [1].

Patch for custom formula palette's added by Brian Sanders

Gump build has made a positive build of Jakarta POI using the latest release of Centipede

Performance branch made and committed by Andy. This reduces memory dramatically and increases execution speed but still has a few things to be ironed out before a merge occurs back to the trunk.


[1] - http://nagoya.apache.org/wiki/apachewiki.cgi?RefactorAndCompleteFormulaParsing

Posted by Tetsuya Kitahata at 08:42 PM

January 01, 2003

Jakarta Newsletter Issue #6

Jakarta Newsletter
Issue: 6
Date: December 2002
Url: http://jakarta.apache.org/site/news/200212.html

As you would expect of the holiday season, not a lot was happening at Jakarta other than some discussion, and the usual steady progress in a number of projects. This issue has been delayed somewhat due to commitments to my real work, but the next issue will hopefully be a little more feature rich and prompt as plenty seems to be happening already!

As always, I want to thank 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.

Rob Oxspring

Contents
General
Commons
James
Lucene
POI


General
" Ideas, suggestions, and comments on the overall Jakarta project "

Editor: Rob Oxspring

" If continuous integration is a good thing on a small project, why not apply it recursively and include all dependencies for which access to source is provided " This has been the reasoning behind Gump [1] and since so many Jakarta folk agreed [2] it was decided to promote Gump from within Alexandria to be a first class Jakarta subproject. The tool has been used to build all the latest versions of the Jakarta code for a long time now, and does a great job of keeping the developers on their toes and helps maintain a high level of interoperability between sub projects.

For those that like Wikis, the turbine team talked us into starting up our very own. As usual there was plenty of discussion about the pros and cons, and plenty about the implementation [3,4] but Andy Oliver decided to get the ball rolling with a simple system with minimal administration needs [5].

Should Apache move into the world of C#? Does the JCP do Java any favours? These are the general themes of this months big thread and since both topics repeatedly come up at Jakarta, it will come as no surprise to learn that opinions are mixed and conclusions are some time off. Still, its always fun guessing which way to jump! [6,7]


[1] - http://jakarta.apache.org/gump/
[2] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=296622
[3] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=294885
[4] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=295289
[5] - http://nagoya.apache.org/wiki/apachewiki.cgi
[6] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=287011
[7] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=286144


Commons
" Creating and maintaining reusable Java components "


BeanUtils
Betwixt
Jelly
Validator

BeanUtils
Editor: Robert Burrell Donkin

Work focussed on bug fixes in preparations for the long overdue 1.6 release. This may have happened (at last :) before this newsletter hits the stands.


Betwixt
Editor: Martin van den Bemt

We are preparing for a first alpha release of betwixt. Currently projects depend on the CVS HEAD version, which needs to change, so we can refactor and add the things on our todo list (see http://commons.apache.org/betwixt/todo.html for the list). Currently updating the last issues that need to be addressed and investigation of a possible recursion bug that was reported (see http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=104262475828802&w=2).

The branch BETWIXT_1_0_ALPHA_1_RELEASE_BRANCH has been created for the release, to allow new development in HEAD.

Robert Burrell Donkin will be the release manager.


Jelly
Editor: Robert Burrell Donkin

This is probably the most active and exciting commons project at the moment. Jelly is bit hard to describe - it's a tool for turning XML into executable code. Read more on the website http://commons.apache.org/sandbox/jelly/.

Don't be fooled by the fact that the website says that jelly is still in the sandbox - jelly was promoted to the commons proper in December: http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=103918404407914&w=2


Validator
Editor: Henri Yandell

Jakarta Commons Validator 1.0.1 was released. A bugfix release, the release notes are available at: http://jakarta.apache.org/builds/jakarta-commons/release/commons-validator/v1.0.1/RELEASE_NOTES.txt



James
" James, a 100% pure Java Mail and News server, and Mailet mail application plat form "

Editor: Danny Angus

Over the Holidays the James team quietly released v2.1 of James, see details at http://james.apache.org. Since then we've been busy planning the next release of James, most of our plans are on the WIKI http://nagoya.apache.org/wiki/apachewiki.cgi?JamesDevelopmentPages.

There's also going to be a revision and new version of the Mailet API aimed at de-coupling more complex Mailet functionality from the server.

The other big news is that a vote was passed to propose James become a top-level Apache project. Why? see: http://nagoya.apache.org/eyebrowse/ReadMsg?listName=james-dev@jakarta.apache.org&msgId=523569


Lucene
" A high-performance, full-featured text search engine "

Editor: Otis Gospodnetic

Doug Cutting added Snowball Stemmers[1] to Lucene Sandbox Repository[2]. Snowball[3] is a small string processing language designed for creating stemming algorithms for use in Information Retrieval. Snowball Stemmers for Lucene project provides pre-compiled version of the Snowball stemmers together with classes integrating them with the Lucene search engine.

Previously Lucene supported only English, German, and Russian. Lucene users can now make use of the code provided by this new project and gain support for the following languages:


Danish
Dutch
English
Finnish
French
German
Italian
Norwegian
Portuguese
Russian
Spanish
Swedish


[1] - http://jakarta.apache.org/lucene/docs/lucene-sandbox/snowball/
[2] - http://jakarta.apache.org/lucene/docs/lucene-sandbox/
[3] - http://snowball.tartarus.org/


POI
" APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format "

Editor: Glen Stampoultzis


Patch for custom palettes received. [1]
Andy created a patch for a proposed refactoring of the EventRecordFactory. [2].
Ken was rather busy converting Poi to the latest and greatest Centipede.
release and making it all run under Gump. [3]
Some idea's on refactoring the formula parser were discussed. [4]
Ken let us in on the correct way to do releases. [5]
Patch for recalc record committed [6]
Support for horizontal centering during print [7]
Add support for setting the active cell in a worksheet through user model [8]


[1] - http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15743
[2] - http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15660
[3] - http://marc.theaimsgroup.com/?l=poi-dev&m=104065623922418&w=2
[4] - http://marc.theaimsgroup.com/?t=103973441900001&r=1&w=2
[5] - http://marc.theaimsgroup.com/?l=poi-dev&m=103911596709970&w=2
[6] - http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13500
[7] - http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15677
[8] - http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15537

Posted by Tetsuya Kitahata at 08:43 PM

December 01, 2002

Jakarta Newsletter Issue #5

Jakarta Newsletter
Issue: 5
Date: November 2002
Url: http://jakarta.apache.org/site/news/200211.html

It has been a quiet month. Commons has killed on old component and welcomed a new one, while other components have kept up fixes, features and releases. Elsewhere there has been more discussion about the infrastructure and community at Apache, and an attempt to be helpful to those developers using IDEs

As always, I want to thank 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.

Rob Oxspring

Contents
General
Ant
Commons
Jetspeed
Lucene
Turbine


General
"Ideas, suggestions, and comments on the overall Jakarta project"

Editor: Rob Oxspring

Andrew Oliver decided to do something about the Java developers who "cut their teeth" on IDEs and don't understand the intricacies of the command line tools that are used under the hood. The page [1] was welcomed by many and was rapidly expanded [2] and should hopefully be a resource useful to a wide range of developers.

Duplicated or pointless import statements appear over time in most Java code. This is an issue that Tom Copeland wanted to tackle, and sparked a few iterations [3] of the "bad imports" report [4].


[1] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&from=281536&to=281536&count=39&by=thread&paged=false
[2] - http://jakarta.apache.org/site/idedevelopers.html
[3] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=271386
[4] - http://cvs.apache.org/~tcopeland/jakarta_bad_imports.htm


Ant
"Apache Ant is a Java-based build tool"

Editor: Stefan Bodewig, Conor MacNeill

The biggest news in Ant land is that Ant has been promoted to a top-level project at the board meeting in November. Much of the discussion on ant-dev has been centered around the proposed board resolution, the formation of the initial PMC and similar issues during the last months. [1,2,3]

While Ant is leaving the oversight of the Jakarta PMC with this move, Ant's committers are not necessarily leaving the Jakarta community, many of us will still be around and contribute where we see fit.

After the release of Ant 1.5.1 at the beginning of October, we've kept on fixing smaller bugs in the 1.5 branch, so a 1.5.2 release is getting more likely. At the same time, development in the HEAD branch is picking up momentum again as we start adding new features and experiment with some stuff. [4,5]

The Ant GUI, Antidote, is being revived and discussions are getting underway on the Ant-dev mailing list. If anyone wants to get involved in this project, they are most welcome


[1] - http://marc.theaimsgroup.com/?t=103658833500006&r=1&w=2
[2] - http://marc.theaimsgroup.com/?t=103702213600002&r=1&w=2
[3] - http://marc.theaimsgroup.com/?t=103778589600002&r=1&w=2
[4] - http://marc.theaimsgroup.com/?t=103834929300004&r=1&w=2
[5] - http://marc.theaimsgroup.com/?t=103834425100001&r=1&w=2


Commons
"creating and maintaining reusable Java components"

Editor: Henri Yandell

Releases
November saw the release of two new projects from Jakarta Commons, and the release of a bugfix for another project.

Commons Validator 1.0 was mentioned in the previous newsletter. It was released on November 1st and is a validation framework from the Struts people.

Commons CLI 1.0 was released on the 6th of November and is an API for parsing command line arguments. It is the direct descendant of 3 older argument parsing APIs and other APIs have affected it over mail list discussions. This gives it a very high pedigree and makes it a great choice for handling the command line.

Commons Lang 1.0.1 is the first bugfix release for the Lang project. There are no new APIs or deprecated functionality, so all Commons Lang users are advised to upgrade, although the bugfixes are not earth-shattering.


[1] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-validator/v1.0/RELEASE-NOTES.txt
[2] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-cli/v1.0/RELEASE-NOTES.txt
[3] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-lang/v1.0.1/RELEASE-NOTES.txt


Gossip
November was quiet for Commons, as it was for all of Apache. Indeed, the Commons mail list dropped by 35%.

The Patterns project in the Sandbox has been mothballed as its code is to go into Commons Lang and Commons Util. Work has begun on moving the BeanUtils reflection code over to Commons Lang and various BeanUtils bugs were dealt with.

A new database utility project has been proposed with generic JDBC(tm) utilities and lives under the name of 'DbUtils' in the sandbox and a project named 'attributes' has been proposed to handle runtime metadata attributes.


[1] - http://commons.apache.org/sandbox/attributes/


Jelly
Editor: James Strachan

Here are the main changes that have happened recently on the Jelly project...


XPath sorting now added to the XML library
can now construct beans with constructor parameters
better reporting of JellyUnit failures, line numbers, expressions etc.
XMLUnit library added for unit testing of XML inside JellyUnit

So now JellyUnit can support the following XML unit testing constructs


XPath based assertions via
schema validation via the jelly:validate library, testing XML against DTDs, XML Schema, RelaxNG etc
comparing 2 documents for equality using the new XMLUnit library
performing XSLT on some XML and then then performing any of the above
parsing HTML via the Neko parser and treating it as XML in any of the above

As well as Jexl based assertions, assertEquals and a new tag to test for exceptions being thrown in Jelly scripts.


Jetspeed
"an Enterprise Information Portal, using Java and XML"

Editor: David Sean Taylor

Jetspeed 1.4b2 will be released on December 9.

New Features
This release is full of new features thanks in great part to a very welcome new committer, Mark Orciuch. Here is a list of new features implemented by Mark:

Parameter Presentation Styles - Data Entry Widgets including Date/Calendar, ListBox, CheckBoxGroup, TextArea, Custom JSP, Custom Velocity Portlet Preview Mode Portlet Usage Logging Password Expiration Online Profile Import/Export Print Friendly Mode Filtering in User Browser and Psml Browser


Documentation
Jetspeed 1.4b2 introduces a new set of documentation to more fully cover the changes made to version 1.4. We have added the following documents:


New 100+ page Jestpeed Tutorial
JPortal Application Examples, accompanies the tutorial
Jetspeed Axis Integration Guide
New Registry Documentation
New Layout Documentation
New Client Media Documentation


Dependencies
We updated as many Jars as we could to the latest versions without breaking the dependencies. Most importantly, we are now again in sync with the latest releases of:


Torque
Turbine
Commons
Hypersonic DB


Improved JSP Support
Jetspeed JSP Tag library updated to support internationalization and Jetspeed Links. JSP templating engine updated to operate like Velocities, supporting the same media/language/country fallback algorithm.


Client and Media Type Registries
Two new registries have been added to better support new Media Types and Client agents.


Jetspeed Security
Further enhancements to security:


New LDAP Security Implementation from Ender Kilicoglu
Added "owner rule" to only allow access to the owner of a portal resource Cleaned up security in default site Add Security to References


Misc

Allow Customization of Portlet Control per Portlet
New File Cache utility
CheckStyle added to build


Lucene
"a high-performance, full-featured text search engine"

Editor: Otis Gospodnetic

Lucene's scoring implementation was previously tightly integrated with the rest of the API. Doug Cutting added a public, extensible scoring API, which allows others to create their own scoring algorithm and plug it into Lucene:

http://nagoya.apache.org/eyebrowse/ReadMsg?listName=lucene-dev@jakarta.apache.org&msgId=532504

A document describing Lucene's index file formats has been added to Lucene's web site:

http://jakarta.apache.org/lucene/docs/fileformats.html


Turbine
" a servlet based framework that allows developers to quickly build secure web applications"

Editor: Martin Poeschl

The Turbine Team released the final releases of Turbine 2.2 and Torque 3.0.

A list of changes can be found on the web-site

http://jakarta.apache.org/turbine/turbine-2/changes.html

http://jakarta.apache.org/turbine/torque/changes.html

The distributions are available at:

http://jakarta.apache.org/builds/jakarta-turbine/turbine-2/release/2.2/

http://jakarta.apache.org/builds/jakarta-turbine/torque/release/3.0/

http://jakarta.apache.org/builds/jakarta-turbine/tdk/release/2.2/

Posted by Tetsuya Kitahata at 08:44 PM

November 01, 2002

Jakarta Newsletter Issue #4

Jakarta Newsletter
Issue: 4
Date: October 2002
Url: http://jakarta.apache.org/site/news/200210.html

After a break for a month the newsletter is back. Over the last two months there has been lots of organisational discussion. After announcing the Japanese translation project last time round, a similar project in Korean has come to light - a section below has been devoted to bringing you up to speed on progress. The lucene guys have been making the usual steady progress mixing on both bugs and features while the Struts team been introducing future plans and new members.

As always, I want to thank 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.

Rob Oxspring

Contents
General
Avalon
Commons
Korean Jakarta
Log4j
Lucene
POI
Struts


General
"Ideas, suggestions, and comments on the overall Jakarta project"

Editor: Rob Oxspring

Jean-Frederic Clere was looking for a way to identify the version of the current JVM. After questioning the reliability of various options the conclusion turned out to be "It really depends on what you're trying to discover" [1].

Vincent Massol was wondering just who his fellow apache committers were and the results of his survey sparked a light hearted debate about what we'd learned [2].

Does apache want another web application framework? Howard Ship has put Tapestry [3] on the table and sparked off a long discussion. Can we have too many? Is it different enough? Is code more important than community? all angles are covered [4].

Is jakarta too big? Should project such as tomcat, ant and others be top level projects? All these things are under discussion along with setting up a dedicated incubator project at apache. This is just the tip of the iceberg the apache community has been discussing a big reorganisation [5, 6].

Dominic Gagne asked a slightly off topic question about the difference between Struts and Turbine and sparked off a long and light hearted discussion about various templating problems and solutions [7].


[1] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=247331
[2] - http://archives.apache.org/eyebrowse/SearchList?listId=&listName=general@jakarta.apache.org&searchText=%22Committers%2C+who+are+we%3F%22&defaultField=subject&Search=Search
[3] - http://tapestry.sf.net
[4] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&from=260431&to=260431&count=73&by=thread&paged=false
[5] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=262621
[6] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=261440
[7] - http://archives.apache.org/eyebrowse/BrowseList?listId=19&by=thread&from=253037


Avalon
"The Avalon project is an effort to create, design, develop and maintain a common framework and set of components for applications written using the Java language"

Editor: Leo Simons

Things have been so active, I can only provide a small sampling of what's been going on :)

Like many projects at apache, avalon has been busy discussing how to fit into the new structure that is currently in the works. Being one of the projects that has suffered most from 'scope creep', there is a lot to think about [1,2,3]. With avalon committers on the Incubator and Commons PMCs, there's definately a promising perspective.

There have also been quite a few bug fixes and enhancements in various places (like Avalon Phoenix now providing good support for using log4j [4] and allowing customizable classloader trees [5]). There's been work integrating catalina and jo! [6] with phoenix.

Following extended discussion [7,8,9], avalon also gained an implementation of the delegate design pattern.


[1] - http://marc.theaimsgroup.com/?t=103578734000006&r=1&w=2
[2] - http://marc.theaimsgroup.com/?t=103597891500005&r=1&w=2
[3] - http://marc.theaimsgroup.com/?t=103545268100001&r=1&w=2
[4] - http://marc.theaimsgroup.com/?t=103546933700004&r=1&w=2
[5] - http://archives.apache.org/eyebrowse/BrowseList?listName=avalon-phoenix-dev@jakarta.apache.org&by=thread&from=268738
[6] - http://avalon.apache.org/apps/apps/sevak/
[7] - http://marc.theaimsgroup.com/?t=103364295500007&r=1&w=2
[8] - http://marc.theaimsgroup.com/?t=103362114600002&r=1&w=2
[9] - http://marc.theaimsgroup.com/?t=103370102300001&r=1&w=2


Commons
"creating and maintaining reusable Java components"

Editor: Henri Yandell

Releases
October has seen many new releases from the Jakarta Commons project:

Commons Lang 1.0 was released on October 4th, a set of very generic components for use in any Java project [1].

Commons Collections 2.1 was released on the 21st of October. Buffers and Decorators were added, along with IteratorUtils and ComparatorUtils [2].

Commons BeanUtils 1.5 was released two days later. All bugs in Bugzilla were cleared out and a BeanComparator was added [3].

Commons Validator had its first release, at 1.0, on the first of November. Technically not October news, but we're so excited we don't care. Validator comes out of the Struts project and is designed to make validating fields of data easier [4].


[1] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-lang/v1.0/RELEASE-NOTES.txt
[2] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-collections/v2.1/RELEASE-NOTES-2.1.html
[3] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-beanutils/v1.5/RELEASE-NOTES.txt
[4] - http://jakarta.apache.org/builds/jakarta-commons/release/commons-validator/v1.0/RELEASE-NOTES.txt


Articles
The Digester project was the subject of articles at both OnJava [1] and JavaWorld [2].

The Lang project was the subject of an article at Builder [3].


[1] - http://www.onjava.com/pub/a/onjava/2002/10/23/digester.html
[2] - http://www.javaworld.com/javaworld/jw-10-2002/jw-1025-opensourceprofile.html
[3] - http://builder.com.com/article.jhtml?id=u00320021017yan01.htm&page=1&vf=tt


Gossip
There is much talk over a new Clazz project, hiding away in the Commons-Sandbox. Stephen Colebourne and Dmitri Plotnikov have been leading a set of long threads on this. Aspects of this may see the BeanUtils project transferring some of its low-level code over to Lang to assist in Java Reflection.

The Lang project will be consuming some aspects of the Patterns [located in the sandbox] project's classes.

The FileUpload project has moved from the sandbox to the main Commons repository. So expect a release to sneak onto the horizon in the next few months here.

October was also home to a lot of talk on a new Apache-level project known as the Apache-Commons. Inspired by you know who, it seeks to provide reusable components with a level of language agnosticism. Figuring out how the old Jakarta Commons works with the new Apache Commons will probably take up time over the next half a year.


Korean Jakarta
"Jakarta Site in Korean"

Editor: Jaechun Noh

Java developers in Korea have more interests in jakarta project than all the time. But many of them have trouble directly reading original English site. Most problems we are encounterd during development using jakarta projects can be solved only if we search for site manuals. We want many people directly searching informations by their convenient languages.

Currently about 35 people participate in the project, and Hangul translation of 13 subprojects is in progress. Tomcat, Struts, Ant Among those have many volunteers more than three since interests in those subprojects are higher than any others in Korea. At the end of this year, we plan to finish all documents in Tomcat 4.X, Struts 1.0.2, POI, JMeter, Ant etc. We are all working with pure purpose without any support from commercial corporation and without any reward.


[1] - http://www.apache-korea.org/


Log4j
"allows developers to control which log statements are output with arbitrary granularity"

Editor: Ceki Gülcü

The main branch of the CVS repository is now in quasi-sync with the 1.2 branch [1]. Work on log4j version 1.3 has begun in earnest.

The committers have voted to require JDK 1.2 and drop support for JDK 1.1 [2].

The DOMConfigurator is now able to parse configuration files that contains component specific elements [3]. This significantly improves on existing capabilities. Many thanks to James Strachan for enhacing jelly to deal with dynamic properties [4]. The idea to use jelly in log4j has been shelved for the moment [5].

Chris Nokes [6] has proposed significant architectural changes to improve memory usage.


[1] - http://marc.theaimsgroup.com/?l=log4j-dev&m=103420386032223&w=2
[2] - http://marc.theaimsgroup.com/?l=log4j-dev&m=103366188809758&w=2
[3] - http://marc.theaimsgroup.com/?l=log4j-dev&m=103477613024786&w=2
[4] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=103479230214745&w=2
[5] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=103479543318721&w=2
[6] - http://marc.theaimsgroup.com/?t=103471060500008&r=1&w=2


Lucene
"a high-performance, full-featured text search engine"

Editor: Otis Gospodnetic

The biggest change to Lucene since Auguest was the addition of a mechanism that allows Document and Field boosting [1]. This change allows one to give additional boost to certain documents and/or fields, which results in those documents getting a higher ranking when they match a query.

A new method, setPositionIncrement() in Token class was added. This permits, for the purpose of phrase searching, placing multiple terms in a single position. This is useful with stemmers that produce multiple possible stems for a word. This also permits the introduction of gaps between terms, so that terms which are adjacent in a token stream will not be matched by and exact phrase query. This makes it possible, e.g., to build an analyzer where phrases are not matched over stop words which have been removed. Finally, repeating a token with an increment of zero can also be used to boost scores of matches on that token.

Boris Okner [2] made a big contribution with his Russian Analyzer.

There was some smaller bug fixes, new classes (QueryFilter), IndexWriter class got getAnalyzer() method, etc.


[1] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=lucene-dev@jakarta.apache.org&msgId=417758
[2] - http://nagoya.apache.org/eyebrowse/BrowseList?listName=lucene-dev@jakarta.apache.org&by=author&from=10162&to=10162&first=1&count=5


POI
"APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format"

Editor: Andrew C Oliver

POI put out a new development release that includes Macro support

Shawn Laubach was voted a committer

There was renewed interest in HDF our word port and several new folks expressed an interest in volunteering

Andy discovered the default encoding on Redhat 8 is now UTF-8 and not 8859-1, hence finally we have a machine to test POI with a different default encoding and can fix that bug.


Struts
Editor:Ted Husted

The Struts team is proud to welcome 4 new Committers this month, David Karr, Eddie Bush, David Graham, and James Mitchell [1].

Everyone is working steadily toward the release of Struts 1.1 beta 3. To help keep everyone on track, the team added a Development Roadmap [2].

There are a number of "nice to haves" that won't make Struts 1.1 which are now slated for Struts 1.2. Farther down the road, Struts 2.0 will rely upon the new standards, like JavaServer Faces and JSTL.

The platform for Struts 1.1 will remain Servlet 2.2 and JSP 1.1. However, a Struts JSTL taglib is available in the nightly build contrib directory and will be released with Struts 1.1 as a separate download.

Solid Struts support for the other new standard, Struts JavaServer Faces, is under development, but cannot be released quite yet [3].

Meanwhile, the Struts User list will continue to enjoy its "casual Friday" policy. Off-topic messages are tolerated on Fridays so long as the message is prefixed with the token [FRIDAY]. Posting [FRIDAY] articles on any other weekday is strongly discouraged.


[1] - http://struts.apache.org/volunteers.html
[2] - http://struts.apache.org/status.html
[3] - http://struts.apache.org/proposals/struts-faces.html

Posted by Tetsuya Kitahata at 08:45 PM

September 01, 2002

Jakarta Newsletter Issue #3

Jakarta Newsletter
Issue: 3
Date: August 2002
Url: http://jakarta.apache.org/site/news/200208.html

The third issue of the newsletter is upon us so lets have a look at what's been happening; I've been given an Apache account and so have been starting to beef up the newsletter archive page http://jakarta.apache.org/site/news/, hopefully I'll get around to a front page link soon to publicise this better. What about everyone else? Alexandria is attempting a come back, the Ant team have been resting themselves after a heavy couple of months and the guys at Avalon have been writing C# code. The Commons coders have been making the usual steady progress, as have Jetspeed, Lucene and POI, while James has introduced a new committer and begun to work on an IMAP implementation again. The developers of ObjectRelationalBridge developers have been tackling some bugs and features, and the Struts team get ever closer to a 1.1 release.

Once again I want to thank 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.

Rob Oxspring

Contents
General
Alexandria
Ant
Avalon
Commons
James
Jetspeed
Lucene
POI
ObJectRelationalBridge
Struts


General
"Ideas, suggestions, and comments on the overall Jakarta project"

Editor: Rob Oxspring

The Gmane effect was discussed at length thanks to a misdirected news posting from George Hester. The news <-> mail gateway is enabling people to discover and use the Jakarta mailing lists without having to look at the mailing lists guidelines [1]. A couple of solutions were offered namely adding usage information to the list's tag line, and blacklisting the gateways but no real conclusion was drawn [2].

Thanks to a couple of enterprising Japanese guys, Japanese language versions of the Jakarta site are taking shape, already including pages for Alexandria, Ant, Bcel, Cactus, Commons, Ecs, JMeter, James, Jetspeed, Log4j, Lucene, Ojb, Oro, Poi, Regexp, Slide, Struts, Taglibs, Tomcat, Turbine and Velocity [3,4,5] and there was also some talk of how best to internationalise the site [6].

Sun's Scott McNealy expressed some controversial opinions about the open source approach. Sparks flew[7].

Can Jakarta have members who are not linked to a particular subproject? Is the Jakarta-Site CVS module a subproject? should it be? and should it have different voting rights to the other sub projects? All these questions and more were posed and discussed with few conclusive answers forthcoming, see what you think [8].

Nicola Ken pointed out that there can be a standard mechanism for fund raising for the ASF via merchandising. Discussion is still in progress [9]


[1] - http://jakarta.apache.org/site/mail.html
[2] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&from=210121&to=210121&count=27&by=thread
[3] - http://www.terra-intl.com/jakarta/
[4] - http://www.ingrid.org/jajakarta/index.html
[5] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=219451
[6] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=218247
[7] - http://archives.apache.org/eyebrowse/SearchList?listId=&listName=general@jakarta.apache.org&searchText=Sun+saids+Opensource+is+bad&defaultField=subject&Search=Search
[8] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=213038
[9] - http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakarta.apache.org&by=thread&from=231268


Alexandria
"a CVS/Javadoc/Source code/Documentation management system "

Editor:Nicola Ken Barozzi

Nicola Ken has restarted development on Alexandria in CVS, and will soon publish a new web site.

Alexandria is a project that, like a big library, shall be able to give insight to all the Apache code base.

It is now based on many sub-projects, that concur to that goal; some are being done as a split / refactoring from the original Gump codebase, which remains in the proposals for stability till the refactoring is complete.

Contributors Welcome! :-D


- bubba: a Gump descriptor GUI editor - READY-
- shrimpfactory: the new repository for Gump descriptors, it's currently not yet used by Gump -WAITING for GUMP MOVE-
- jenny: merges all the Gump descriptors in a workspace in one unified descriptor for easy processing -READY-
- javasrc: code contributed by the javasrc.sf.net project, is now in Alexandria! It makes cool colored crossed-linked HTML from Java source code -READY-
- viprom: the Virtual Project Model, is a resolver and an accessor to the model of the projects-modules-servers-etc. It will support being used in Ant in a simple way -JUST STARTED-
- Gump: It should be the new version of Gump, that will use the other parts it currently integrates, form the separate projects. -NOT YET REFACTORED-
- Dan: nags lists and users based on certain conditions and events -NOT YET STARTED-

NOTE: Gump, yes, the usual naggy Gump, is always in proposal / Gump, and is not being touched ATM. The "Gump" referred to above is the newly refactored Gump.


Ant
"Apache Ant is a Java-based build tool"

Editor:Stephane Bailliez

A quiet month in terms of discussions and code. It has mostly been bug fixes pushing slowly toward a new release sometime soonish.

Most of the developers have stepped aside a little bit to enjoy some well deserved vacation and reacquaint with friends and family.

In particular Stefan Bodewig managed to escape the flood in Germany by living in the good side of it and despite being in vacation periodically escape his wife and kids to connect and check emails and CVS commits, should it be for fixing the copyright date that I keep forgetting to change most of the time.

Erik Hatcher and Steve Loughran slowly decompress from the rush about their book 'Java Development with Ant' that they managed to deliver in time and synchronized with Ant 1.5 (despite all attempts of other committers to make changes until the last minute).

Magesh Umasankar after successfully being release manager for Ant 1.5 applies the same rigorous process for the 1.5.1 release.

Diane Holt keeps doing a tremendous job in ant-user by nearly doing a 7/7 - 24/24 support. All others committers are way behind.

Last but not least, the Ant team received a query about a Ant purchase order issued from a developer located in Dubai, United Arab Emirates. We are still trying to make a quote. Any suggestions is welcome. ;-)

Embed
Editor:Nicola Ken Barozzi

Ant has a new proposal for enhancement in the Ant CVS, under proposals/embed, which enables dynamic property resolution via interceptors (currently JXPath, Jexy and Velocity), a SAX2 parser, an enhanced classloader, a project import facility and an XMLDOM datatype to load an entire XML DOM that can be accessed via jxpath: dynamic properties.

These features are currently being used in Krysalis Centipede http://www.krysalis.org/centipede/ (current site is still about the previous version, please look at the mailing list archives and CVS). There are many patches to this proposal pending from The Centipede committers, which, differently from Maven, is based on Ant, and more to come.


Avalon
"The Avalon project is an effort to create, design, develop and maintain a common framework and set of components for applications written using the Java language"

Editor:Leo Simons

Probably the most exciting thing happening with Avalon at the moment is that a port to C# [1] is in the works! Initial concerns regarding fitting C# into a Java project were quickly satisfied, and the people working on the port were happily welcomed in. Some very interesting material [2] is now appearing in CVS...

Some of the discussion on avalon-dev got pretty heated [3] this month. Efforts to improve interoperability between the various Avalon containers [4] led to long discussions about some of the design choices made [5]. We are still confident this is all for the better in the end, though. We hope to make it possible to share components between cocoon, James, turbine, ant, and other projects completely transparently.

Finally, some avalonians are getting pretty exited as the Avalon phoenix subproject [6] is getting closer and closer to a final release. This will (among other things) help satisfy the requests we have been getting [7] from programmers that are desperately trying to convince their bosses that Phoenix is a Good Thing.

Make sure to read the next few newsletters to find out how the Avalon developers resolve their container interoperability 'wars' and also learn why C# is (or isn't) really cool new technology.


[1] - http://marc.theaimsgroup.com/?l=avalon-dev&m=102823180701713&w=2
[2] - http://cvs.apache.org/viewcvs.cgi/jakarta-avalon-excalibur/csframework/
[3] - http://marc.theaimsgroup.com/?l=avalon-dev&m=102957399421271&w=2
[4] - http://avalon.apache.org/framework/reference-containers.html
[5] - http://marc.theaimsgroup.com/?t=102967887900001&r=1&w=2
[6] - http://jakarta.apache.org/phoenix/
[7] - http://marc.theaimsgroup.com/?t=103043406700001&r=1&w=2


Commons
Due to the diverse nature of the commons group, this section has been split up to make it easier to pick out the topics of interest. This months stories come from the following:


CLI
Discovery
FileUpload
Morphos

Editor: Martin Cooper

A change made to the coding conventions used in one component led to some discussion [1] about whether or not each Commons component should be permitted to define its own coding conventions. After a vote [2], the Commons charter was updated to reflect the outcome, viz each component may define its own coding conventions [3].


[1] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=102972794532005&w=2
[2] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=102991592429004&w=2
[3] - http://commons.apache.org/charter.html

CLI
"Commons CLI provides a simple API for working with the command line arguments and options"

Editor: John Keyes

A new feature has been added so a value separator can be provided. This is to make it easier to process options like "-Dproperty=value". When building the Option specify that '=' is the value separator. The Option will have two argument values when it is parsed; "property" and "value".

A good deal of refactoring was carried out on the parsers. The individual parsers now implement the flatten() method. All of the Option processing is performed in the Parser class.


Discovery
Editor: Nicola Ken Barozzi

After being put in commons proper from the sandbox, Costin engaged a heated discussion on the design, which resulted in heavy refactoring by himself and mostly Richard Sitze, who has also committed a second possible design to the sandbox. Please take a look and help decide :-) [1,2,3]


[1] - http://archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=227991
[2] - http://archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=231341
[3] - http://archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@jakarta.apache.org&by=thread&from=231977


FileUpload
Editor: Martin Cooper

The FileUpload component continues to make progress in the sandbox, preparing for a move to Commons Proper and an official release. FileUpload now has a web presence on the Commons site, and is primarily awaiting the creation of unit tests.


Morphos
Editor: Nicola Ken Barozzi

Patches still coming in from Sven Kuenzler. Now we have a Locator interface separated from the Morphers.



James
"a mail and news server, supporting Mailets, SMTP, POP3, NNTP, and soon..IMAP"

Editor: Danny Angus

Since the last newsletter the James team have elected a new committer, he is Peter Goldstein. Peter has been throwing himself into all the tasks no-one else really wanted to tackle. Go Peter!.

The current hot topic is IMAP, James had dropped IMAP from the HEAD of CVS some while ago owing to lack of a champion, but in recent weeks Sascha Kulawik has been focusing our attention on IMAP, and getting the basic functionality straightened out. We're hoping to see IMAP return to James distributions bigger and better than before the next release.

We have voted to follow Ant good practice, and remove Ant from our CVS tree and source distributions.

We have also been following through the issues raised since our last release by the upgrade of the Phoenix core of James, and have now got a stable milestone build running on this platform: http://jakarta.apache.org/builds/jakarta-james/latest/. This work promoted some refactoring of IO, JDBC and String handling all aimed at improving performance and stability.

Other topic discussed included the next release plan, ways we can encourage contributions of documentation, and ideas for inclusion in future versions of the Mailet API.

We have added HyperSonicSQL support for repositories thanks to Steve Belt, and a new HOW-TO document explaining one way to use James with sendmail.


Jetspeed
"an Enterprise Information Portal, using Java and XML"

Editor: David Sean Taylor

1) Updating jars to the current production versions(Paul)

We updated as many Jars as we could to the latest versions without breaking the dependencies...

2) Added portlet usage tracking / statistics (Mark)

This new features makes use of Log4J to log portlet usage statistics in common log format (Apache CLF), which can then be analyzed by tools such as WebTrends to produce portlet usage statistics.

Example of logging:

10.177.70.135 - admin [27/Aug/2002:10:23:32 CDT] "GET /jetspeed/UserBrowser HTTP/1.0" 200 -
10.177.70.135 - admin [27/Aug/2002:10:23:37 CDT] "GET /jetspeed/GlobalAdminPortlet HTTP/1.0" 200 -
10.177.70.135 - admin [27/Aug/2002:10:23:44 CDT] "GET /jetspeed/PortletBrowser HTTP/1.0" 200 -
10.177.70.135 - admin [27/Aug/2002:10:23:48 CDT] "GET /jetspeed/PsmlBrowser HTTP/1.0" 200 -
10.177.70.135 - admin [27/Aug/2002:10:23:59 CDT] "GET /jetspeed/PsmlForm HTTP/1.0" 200 -
10.177.70.184 - turbine [27/Aug/2002:10:22:55 CDT] "POST /jetspeed/StockQuote HTTP/1.0" 200 -
10.177.70.184 - turbine [27/Aug/2002:10:22:56 CDT] "POST /jetspeed/http://www.xmlhack.com/rsscat.php HTTP/1.0" 200 -
3) Added Dutch, Japanese, Italian, Malaysian, and Norwegian Jetspeed Localization files

That now makes 9 total languages supported (de,en,es,fr,it,ja,my,nl,no)

4) Implemented style checking for the source code (Paul)

The build has been updated to automatically check for the availability of the CheckStyle tool (http://checkstyle.soureforge.net) and run a style check on the Jetspeed source to ensure that all committed code is adhering to Jakarta coding standards.

5) Implemented portlet parameters presentation styles (Mark)

Custom presentation styles or "widgets" allow for portlet parameters to have a presentation style associated with them. The implementation can be found in the new package:

org.apache.jetspeed.modules.parametersInitial Widgets are: checkbox, checkbox group, listbox, ant textarea.

6) Implemented Owner authorization security in the security model (Paul)

Jetspeed Authorization has added support for declarative security definitions to specify that only the owner of the resource is allowed access. In the security registry, a new element has been added to the element, the element:




7) Implemented Reference configuration in the Customizer (Paul)

The customizer now supports placing references to other PSML resources. Previously, the PSML had to be edited by hand in order to include a reference. Thus references are defined in one common PSML resource, and then can be included as a common set of portlets into another PSML resource.

8) Implemented on-line psml import / export facility (Mark)

Useful for users who store the PSML resources in the database. This feature works online, the system does not need to be brought down.

9) Added four new live RSS News feeds, contributed by the BBC (David)

The BBC contributed four live RSS News feeds to Jetspeed, which have been incorporated into the portlet registry for anyone to use. The news feeds are updated every minute (FrontPage Headline News, World News, Technology, UK News)


Lucene
"a high-performance, full-featured text search engine"

Editor: Otis Gospodnetic

QueryParser modifications sent from a Hungarian contributor were applied. The changes allow Lucene API users to programmatically specify the logical operator between query terms that they want to use (AND or OR). Before this change lots of people complained about the default operator being OR and about the lack of a simple way to change that. The credit for this goes to Peter Halacsy.

Another complaint from people who wanted to extend Lucene was about Lucene's strict access modifiers. Lots of methods were either final or private or package protected. This has now been changed, so developers can easily extend classes like IndexReader, IndexWriter, etc.

Until now Lucene was capable of searching only local indices. Doug Cutting put an end to that by restructuring the code base a bit, and providing the first version of RemoteSearchable class, which uses RMI to perform searches on remote indices.

As promised in the last issue, Lucene's query support now allows queries such as "Java app*" (find all documents containing a phrase "Java app", followed by anything).


POI
"APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format"

Editor: Andrew Oliver

POI ended the month with mostly bug reports and patches. Next month will be far more interesting with some long awaited features being fulfilled.

POI users
POI doesn't like EBDIC.... (We're working on that). This was a really long thread... here are some highlights:

http://news.gmane.org/article.php?id=1087&group=gmane.comp.jakarta.poi.user
http://news.gmane.org/article.php?id=1083&group=gmane.comp.jakarta.poi.user
http://news.gmane.org/article.php?id=1089&group=gmane.comp.jakarta.poi.user

There was talk of dropping 1.2 support as there are places where its very inconvenient:

http://news.gmane.org/article.php?id=1060&group=gmane.comp.jakarta.poi.user

If no one speaks up next month POI will probably require 1.3.x (with 1.3.0 strongly discouraged to anyone who doesn't like random core dumps)

We told people how to set their JVM to have a real big heap where needed:

http://news.gmane.org/article.php?id=1034&group=gmane.comp.jakarta.poi.user

Talk about reducing POI's memory footprint (not till 3.0):

http://news.gmane.org/article.php?id=950&group=gmane.comp.jakarta.poi.user

And thankfully it looks like all the pain we used to have with dependencies on Log4j are gone.


POI Developers
We finally got around to basically finishing the voting...but I won't announce the winner yet cause officially thats in September ;-)

Eric Pugh has been learning the ropes and working on getting convenience methods into the POI contrib package:

http://news.gmane.org/article.php?id=2781&group=gmane.comp.jakarta.poi.devel

Sergei Kozello has been doing some seriously good work on POIs character encoding:

http://news.gmane.org/article.php?id=2785&group=gmane.comp.jakarta.poi.devel

Jason Height has been working on a much requested sheet cloning feature:

http://news.gmane.org/article.php?id=2794&group=gmane.comp.jakarta.poi.devel

And there were lots of other bug reports, patches and commits these are just some of the highlights. But overall August was pretty slow with many committers on vacation, getting engaged or just generally busy trying to keep their jobs. I think we've had more messages and stuff in the last week than all of August!


ObJectRelationalBridge
"an Object/Relational mapping tool that allows transparent persistence for Java Objects against relational databases"

Editor:Thomas Mahler

There is a new O'Reilly book about Struts in the works that covers integration of Struts and OJB. It contains a whole chapter on how to build a model layer based on OJB (chapter 6). The book is available on the Serverside.com for public review [1]. I had a short conversation with the author and he posted an inspiring reply [2].

Several users reported problems when running OJB apps in Tomcat and reloading servlets. There have been some discussions about possible workarounds on the user list [3].

Finally we decided to work on this problem and to implement a reload capable configuration mechanism too. We started on an Avalon based implementation [4].

We have been thinking about support for long transactions for a while. We finally came up with a clear vote to implement this feature [5]

There has also been a new public release 0.9.5 that contains mostly bug fixes.


[1] - http://www.theserverside.com/resources/strutsreview.jsp
[2] - http://archives.apache.org/eyebrowse/ReadMsg?listName=ojb-dev@jakarta.apache.org&msgNo=1413
[3] - http://archives.apache.org/eyebrowse/BrowseList?listName=ojb-user@jakarta.apache.org&by=thread&from=218099
[4] - http://archives.apache.org/eyebrowse/BrowseList?listName=ojb-dev@jakarta.apache.org&by=thread&from=215588
[5] - http://archives.apache.org/eyebrowse/SearchList?listId=&listName=ojb-dev%40jakarta.apache.org&searchText=%22%5Bvote%5D+long+transactions%22&defaultField=subject&Search=Search


Struts
Editor:Martin Cooper

Struts 1.1 Beta 2 was released this month [1]. This release brings Struts a step closer to a 1.1 Final release. It includes significant new functionality, and includes fixes for a number of bugs reported against earlier versions [2].


[1] - http://marc.theaimsgroup.com/?l=jakarta-announce&m=102923581314686&w=2
[2] - http://struts.apache.org/userGuide/release-notes-1.1-b2.html

Posted by Tetsuya Kitahata at 08:46 PM

August 01, 2002

Jakarta Newsletter Issue #2

Jakarta Newsletter
Issue: 2
Date: July 2002
Url: http://jakarta.apache.org/site/news/200207.html

Well, another month has passed and its time for the second monthly review of whats been going on at Jakarta. The Ant team have been working through some of the ideas dubbed too controversial for 1.5, while the Avalon bunch have been fixing up their documentation. CLI have been merging the Avalon-CLI code with their own new features and the Discovery and Morphos projects finally got some CVS space. Finally OJB and Struts have been in a bug fixing phase.

Once again I want to thank 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.

Rob Oxspring

Contents
General
Ant
Avalon
Commons
Log4j
ObJectRelationalBridge
POI
Struts


General
Editor: Rob Oxspring

After being "beaten up heavily" the last time he proposed it, Pier Fumagalli decided to have a second attempt at allowing people to be members of the Jakarta community without being involved in a particular codebase first [1]. The opinions were mixed as before and one of the proposed solutions was to promote the jakarta-site CVS module to normal subproject status, again views were mixed [2].

Apache software often involves external tools and libraries and a recurring topic on the mailing lists involves how the licences of these libraries interact with the ASF's own licences. This month there were a couple of useful summaries of the major points to watch out for [3] although as ever, don't expect a definitive answer here - speak to a good software lawyer instead.

Richard Pitt of TogetherSoft offered Jakarta an academic licence for ControlCenter so that UML diagrams could be produced and maintained for jakarta projects [4].

The POI team were a little concerned that some potential new logos may come a little close to the MS Office(tm) originals, the discussion took place on general to get a broader opinion base and the community felt that the logo in question was legally risky [5].


[1] - http://marc.theaimsgroup.com/?t=102580965400001&r=1&w=2&n=33
[2] - http://marc.theaimsgroup.com/?t=102811263900001&r=1&w=2&n=10
[3] - http://marc.theaimsgroup.com/?t=102762881600004&r=1&w=2&n=11
[4] - http://marc.theaimsgroup.com/?t=102708393700004&r=1&w=2&n=86
[5] - http://marc.theaimsgroup.com/?t=102641802400002&r=1&w=2&n=8


Ant
"Apache Ant is a Java-based build tool"

Editor: Erik Hatcher

Ant has been modified to support all tasks outside of (in the current CVS version only, at the moment) [1].

Costin Manolache is spearheading an implementation of an facility with much discussion of the gory details of how this will work especially with the -projecthelp switch. This work is in the proposal/embed tree of Ant's CVS [2].

A large discussion on target-less build files has occurred [3, 4, 5, 6]

Erik Hatcher and Steve Loughran, with Manning's permission, contributed a concise and accurate Ant 1.5 PDF task reference from their hot-off-the-press Java Development with Ant book. This lives in Ant's CVS and will likely be included in any bug fix releases of Ant 1.5 [14, 15].

Costin started a large thread with "itches for Ant 1.6" [9]. Steve Loughran followed with his wishlist for the next version of Ant [7].

Splitting optional.jar into separate JAR libraries was a hot topic in July [8].

Conor MacNeill withdraws his Mutant Ant2 proposal [10].

By far the most active thread was on the never-ending topic of Ant2, with notable discussions of importing reusable project pieces and project extensibility and overridability [11].

dIon Gillard stirred things up with an "inflamatory e-mail" early in the month, sparking lots of Ant2 discussion [12].

Last, but not least - Ant 1.5 was released and has proven itself solid [13].


[1] - http://marc.theaimsgroup.com/?t=101543270100009&r=1&w=2&n=17
[2] - http://marc.theaimsgroup.com/?t=102767954900003&r=1&w=2&n=14
[3] - http://marc.theaimsgroup.com/?t=102750506600002&r=1&w=2&n=27
[4] - http://marc.theaimsgroup.com/?t=102704723700002&r=1&w=2&n=32
[5] - http://marc.theaimsgroup.com/?t=102740536200001&r=1&w=2&n=16
[6] - http://marc.theaimsgroup.com/?t=102697608600008&r=1&w=2&n=38
[7] - http://marc.theaimsgroup.com/?t=102736845700003&r=1&w=2&n=37
[8] - http://marc.theaimsgroup.com/?t=102689872400003&r=1&w=2&n=44
[9] - http://marc.theaimsgroup.com/?t=102649786700004&r=1&w=2&n=42
[10] - http://marc.theaimsgroup.com/?t=102635682000001&r=1&w=2&n=36
[11] - http://marc.theaimsgroup.com/?t=102608695800001&r=1&w=2&n=91
[12] - http://marc.theaimsgroup.com/?t=102604006200002&r=1&w=2&n=40
[13] - http://jakarta.apache.org/builds/jakarta-ant/release/v1.5/
[14] - http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-ant/docs/appendix_e.pdf?rev=1.1&content-type=application/pdf
[15] - http://www.amazon.com/exec/obidos/ASIN/1930110588


Avalon
"The Avalon project is an effort to create, design, develop and maintain a common framework and set of components for applications written using the Java language"

Editor: Leo Simons

The Avalon team has been busy fixing the ills that have plagued their document building for so long. It has also been brought to our attention that the current avalon skin (derrived from the Tigris/Maven sites) displays rather poorly with IE 5.5, but ok with many other browsers. The Avalon team is looking at upgrading the skin shortly, which is easy to do with the Cocoon doc build system.

In other news, The Avalon team is looking at unifying two of their component containers. Merlin and Fortress were being developed with separate goals in mind, but they both recognize the strengths that the other container had. As a result, Fortress will be taking on the meta-info features of Merlin, and Merlin will be adding the more robust component instance management of Fortress.

On the topic of 'avalonized' applications is good news as well. A wrapper for Catalina (the servlet engine in Tomcat) has been developed. The proposed avalonized version of Turbine's Services Framework is also making good progress.

The last major recent addition to Avalon concerns JMX management. Avalon Phoenix has improved its automatic management capabilities even further, and a GUI client is in the works.


Commons
Due to the diverse nature of the commons group, this section has been split up to make it easier to pick out the topics of interest. This months stories come from the following:


BeanUtils
Betwixt
CLI
Digester
Discovery
HttpClient
Lang
Morphos

BeanUtils
"Commons-BeanUtils provides easy-to-use wrappers around the Java reflection and introspection APIs"

Editor: Robert Burrell Donkin

In terms of code, it's only been bug fixes this month, pushing towards a new release sometime soonish.

There was a lot of talk about Beanutils, Lang, reflection and refactoring. It's generally agreed that there is a lot of useful code here in commons that needs to be organized better so that it can be re-used.

If you look at the archives, you can't miss discussions of these issues but here are a few examples:


[1] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=102435460121492&w=2
[2] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=102547903022740&w=2
[3] - http://marc.theaimsgroup.com/?l=jakarta-commons-dev&m=102585153831728&w=2


Betwixt
"Betwixt provides services for mapping JavaBeans to XML documents, and vice versa"

Editor: Robert Burrell Donkin

Initial activity pushing towards an early release has stalled a little. Work on other projects such as Jelly and Maven have diverted some energy away from Betwixt. But Betwixt is used in these project and so ideas have also been fed back the other way. A SAXWriter (which maps beans directly into SAX events) was created in response to needs in Maven.


CLI
"Commons CLI provdes a simple API for working with the command line arguments and options"

Editor: John Keyes

July was a month of consolidation for CLI with refactoring the current code base and implementing new features.

Parsers are now constructed using the CommandLineParserFactory[1].

Usage information is now automatically generated[2].

Options can now be created using OptionBuilder[3]. This makes it much easier to add features to Option.

A discussion[4] was held with the Avalon team which has resulted in a number of feature requests[5].

Validation for Option creation has also been added[6].


[1] - http://marc.theaimsgroup.com/?t=102537994700001&r=1&w=2
[2] - http://marc.theaimsgroup.com/?t=102642398900004&r=1&w=2
[3] - http://marc.theaimsgroup.com/?t=102772419800006&r=1&w=2
[4] - http://marc.theaimsgroup.com/?t=102750811500003&r=1&w=2
[5] - http://marc.theaimsgroup.com/?t=102812124400007&r=1&w=2
[6] - http://marc.theaimsgroup.com/?t=102786757700003&r=1&w=2


Digester
"Commons-Digester is a rule-base XML-to-Java-object mapping utility"

Editor: Robert Burrell Donkin

Another quiet month in terms of extra features but lot's of bugs have been stomped. We're pushing towards a new release very soon.


Discovery
"Locates, configures and manages implementations of given Java interfaces"

Editor: Richard A. Sitze

New subproject that represents the recurring pattern (JAXP/Xerces, commons-logging, ??) for finding a class implementing a given interface. Locating, instantiating, and caching (assumes singletons, or at least singletons within some context) of classes (factories), and locating property files for configuring same. Includes best-practices guide for usage.

As a separate subproject, I (and I assume others as the interest strikes them) am more inclined to devote some effort to improving efficiency and increasing smarts of this facility. In this light, current improvements over original code (extracted from commons-logging):


minimizes 'redundant' class loaders (but doesn't eliminate)
provides logical 'grouping', allows different groups of components/applications to maintain different factories.
seeking for better/smarter caching mechanism.


HttpClient
"HttpClient provides client side HTTP 1.0/1.1 connectivity to any Java component"

Editor: Jeff Dever

HttpClient component may be of interest to anyone building HTTP-aware client applications such as web browsers, web service clients, or systems that leverage or extend the HTTP protocol for distributed communication.

There has been renewed interest in HttpClient lately, with very active contributions and discussions from new contributors and veterans alike. In the month of August we expect to release a milestone build with new content for the upcoming 2.0 release.


Lang
"Commons.Lang, a package of Java utility classes for the classes that are in java.lang's hierarchy"

Editor: Henri Yandell

Jakarta Commons Lang have released a beta of their highly reusable utility classes dedicated to improving classes in java.lang. The immediate aim of the Lang component has been to serve other Jakarta projects, unifying such things as NestedException structures, String utilities and various Object handling methods. Lang is already being used by a host of projects, both inside Jakarta and outside, and the code involved is mature and stable having been assembled from existed Jakarta and non-Jakarta projects.


Morphos
"a project called Morphos with the scope of transforming file formats."

Editor: Nicola Ken Barozzi

Morphos in commons-sandbox has finally had its initial code checkin by nicolaken, after very fruitful discussions on the commons-dev list.

Basically it became evident that a Morpher should not deal with immutable objects, and that will be done by Transformer(s), the interface of which is in commons-sandbox Patterns project. Avalon-Excalubur has a Converter package that can be the base for a package of Transformer implementation.

Sven Kuenzler svenk@gmx.net has been very active in this month on Morphos, both in discussions and patches, and is the first real Mrphos developer. Thank you Sven :-)



Log4j
"allows developers to control which log statements are output with arbitrary granularity"

Editor: Mark Womack

Mark Womack submitted an initial implementation of the Receiver concept he proposed in June ([1]) [2]. No decision has been made to include this design in the next major version of log4j, though most comments seem positive to date.

Ceki Gülcü announced the availability of a draft version of his ebook, "The Complete Log4j Manual" [3].

Version 1.2.5 of log4j was released with minor changes and bug fixes [4].

There was a good discussion about socket performance and methods to increase the throughput performance for remote logging [5]. Performance can be easily increased by having LoggingEvent implement the Externalizable interface instead of the Serializable interface, but at the cost of backward compatibility. Looking for ways to increase performance and still maintain backward compatibility.

The log4j-cvs mailing list was folded into the log4j-dev mailing list [6]. CVS messages are now posted to the dev mailing list.

Kevin Steppe outlined some future directions and features for the JDBCAppender class [7].

Mike McAngus submitted changes to the date format related classes to support locale, decimal separator, and timezone [8] (see his 7/14/2002 message). The changes included the ability to set these values as sub-settings of the date conversion operator (%d) from a configuration file. Useful and extensive test cases were also included as part of the submission. After reviewing the code, it was decided to include these changes in the next major release of log4j (v1.3). The changes will be checked into cvs in the near future once a merge of the 1.2 branch is completed.


[1] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102523926310678&w=2
[2] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102559080116243&w=2
[3] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102572587708226&w=2
[4] - http://marc.theaimsgroup.com/?l=log4j-user&m=102587107013807&w=2
[5] - http://marc.theaimsgroup.com/?t=102623343500001&r=1&w=2
[6] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102733338412717&w=2
[7] - http://marc.theaimsgroup.com/?t=102760436200005&r=1&w=2
[8] - http://marc.theaimsgroup.com/?t=102420710600002&r=1&w=2


ObJectRelationalBridge
"an Object/Relational mapping tool that allows transparent persistence for Java Objects against relational databases"

Editor: Thomas Mahler

Being exposed as a Jakarta project brought us many new users who found several bugs and had many ideas for improvements and new features. Thus we had to react quickly and launch two public releases in July!

There have been major improvements to the setup routine. We have incorporated several user suggestions to make setup as easy as possible.

The documentation has been completely restructured and updated.

We redesigned the connection management. OJB is now able to cooperate better with app-server connection pools. For non-managed environments we now provide a commons-pool based connection pool.

There is now a tool that allows verification of the mapping repository against the target database.

We also implemented a forward engineering tool that generates all required tables from the mapping repository.

The loading of 1:n associations has been redesigned. This resulted in a drastic performance gain.


POI
"APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format"

Editor: Andrew C. Oliver

Japanese translations began


[1] - http://www.mail-archive.com/poi-user@jakarta.apache.org/msg00807.html
[2] - http://www.terra-intl.com/jakarta/poi/
[3] - http://jakarta.apache.org/site/news.html#0706.1

A number of people started working on better i10n and i18n support for HSSF still working on getting workable patches into the sourcebase.


[4] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg03067.html
[5] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg03042.html
[6] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg03039.html
[7] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg03011.html

A discussion started on when to move HDF out of the scratchpad - The prevailing view that HDF needs more website exposure to attract a larger community more than it needs to move out of the scratchpad and would do users a disservice by claiming greater maturity. Some believed that mature read support was enough, while a majority believed that read and write support is required.


[8] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg02951.html
[9] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg02949.html
[10] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg02946.html
[11] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg02936.html

Jason Height did so much on Andy Oliver's contrib module "SuckyViewer" that it no longer sucks. This has caused Jason's status to reach "Really Cool Guy & you rock" proportions. So now we have a nice swing Applet/Application for viewing Excel/XLS spreadsheets over the internet or on the local filesystem. "SuckyViewer" has been renamed SheetViewer. (and while this Applet/Application no longer sucks, Andy still thinks swing/applets and JAVA GUIs in general... tend to suck). From a recent extract of POI do ./build.sh contrib and then type sheetviewer at the prompt.


[12] - http://cvs.apache.org/viewcvs/jakarta-poi/src/contrib/src/org/apache/poi/hssf/contrib/view/
[13] - http://www.mail-archive.com/poi-dev@jakarta.apache.org/msg02778.html
[14] - http://www.mail-archive.com/poi-user@jakarta.apache.org/msg00720.html
[15] - http://www.mail-archive.com/poi-user@jakarta.apache.org/msg00721.html

Andy Oliver gave a live presentation to the Triangle Java User's Group (trijug.org), one of the most active/thriving JUGs in the US, on POI and generating XLS spreadsheets using XML in Cocoon and POI. There won't be a POI presentation at the Apachecon this year but you can catch the "slides" still (below) and Andy's working on getting the videotape digitally recorded. (If anyone has the equipment and will please email acoliver.AT.apache.DOT.org)>


[16] - http://www.mail-archive.com/poi-user@jakarta.apache.org/msg00760.html


Struts
"to provide an open source framework for building Web applications"

Editor: Joe Germuska

* Struts 1.1b2: Twelve Bugs Away
Most of the activity on Struts-Dev in July was dedicated to swatting bugs en route to a 1.1b2 release. Although that release is not scheduled, as of 2002-08-03, there are only 12 outstanding bugs.[1]


[1] - http://cvs.apache.org/viewcvs/jakarta-struts/STATUS

* Struts meets JSTL-EL
David M Karr stepped up to spearhead an effort to extend the Struts JSP tag libraries to support the JSTL Expression Language. [2] Discussion and work continue actively. Late in the month a discussion thread [3] helped to summarize the current state of development. At this time, the work is aimed at integrating with the JSTL, which will therefore require Servlet 2.3/JSP 1.2 to use the JSTL Expression Language. Along the way, Struts tags which perform essentially equivalent tasks to JSTL tags are expected to be left behind.


[2] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=9378
[3] - http://nagoya.apache.org/eyebrowse/BrowseList?listId=41&by=thread&from=207178

* Commons File Upload component integrated
Martin Cooper introduced an implementation of the MultipartRequestHandler interface which adapts the commons-upload component for use in a Struts application.[4] As of the 20020728 nightly build, this is the default implementation of the interface.


[4] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=9648

* Extending Struts XML Configuration
Early in the month, Brian Topping suggested exposing the Commons Digester configuration so that developers could use the "struts-config.xml" for arbitrary application configuration [5] Craig McClanahan pointed out that Struts depends on a validated schema because certain default values are specified in the struts-config DTD[6] At the time, Craig suggested that that opening up struts-config would wait until after a 1.1 is released, when an XML Schema might be developed. However, later in the month, Craig made a series of changes to the central "ActionServlet" controller. By moving the default values into the configuration beans, he eliminated the dependency on a validating parse of struts-config.xml. Around the same time, a "rulesets" servlet initialization parameter was added, allowing users to specify a list of classes implementing the Digester RuleSet interface. Thus, after these changes, application developers have the ability to use the basic struts initialization process to do just about any application configuration they require.


[5] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=9325
[6] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=9333

* Other Struts News: http://struts.apache.org/news.html


30 July 2002 - Struts Console version 2.0.1
25 July 2002 - Easy Struts v0.4.2 for Eclipse / JBuilder
24 July 2002 - ObjectAssembler 2.0
24 July 2002 - JavaPro Struts Tutorial
18 July 2002 - JavaBoutique Struts Tutorials
17 July 2002 - StrutsTestCase v1.8 Released
11 July 2002 - Scioworks Camino v2.0
11 July 2002 - Easy Struts v0.4 for Eclipse / JBuilder
10 July 2002 - Using Struts in Oracle JDeveloper 9i Tutorial
09 July 2002 - Struts Console version 2.0
09 July 2002 - Struts Adoption article
08 July 2002 - Struts article in e-Promagazine
08 July 2002 - JAAS article highlighting Authorization and Authentication with Struts

Posted by Tetsuya Kitahata at 08:47 PM

July 01, 2002

Jakarta Newsletter Issue #1

Jakarta Newsletter
Issue: 1
Date: June 2002
Url: http://jakarta.apache.org/site/news/200206.html

Welcome to the issue #1 of the Jakarta Newsletter. The aim of the newsletter is to try and let people know what's been going on in the jakarta projects when they have been unable to monitor all of them themselves. The editorship of the various sections and overall will probably vary which should hopefully lead to a fairly dynamic monthly newsletter.

So who's sending this to you? I'm a UK software developer working mainly with database webapps, with an interest in the development processes involved. My involvement at jakarta has been mainly as a user of various subprojects, a lurker on the general and commons-dev lists, a long time lurker and occasional conributor to Ant, and lately this Newsletter has become my pet project.

This month we have news based contributions from several projects and a plea for requirements from Avalon. I'd like to thank 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.

Rob Oxspring

Contents
General
Ant
Avalon
Commons
Jetspeed
Log4j
Lucene
ObJectRelationalBridge
ORO
POI
Struts
Taglibs
Tomcat


General
Editor: Rob Oxspring

Discussions on general have been fairly light weight this month. The main points have been in regard to issue #0 of the newsletter [1] and some discussion about how best to setup the scarab installation for bug reporting [2].

The other main "on topic" thread regarded java.sun.com's new look. Is it time for jakarta to have a facelift? can we learn lessons from sun? The answer seems to be wait for maven or forrest but generally the familiar open source rule of "your itch, you scratch it" applies [3]. The same thread also discusses the idea of announced and arranged live chats about the various jakarta project with key developers on hand to help explain and assist.


[1] - http://marc.theaimsgroup.com/?t=102328553200005&r=1&w=2&n=21
[2] - http://marc.theaimsgroup.com/?t=102391995300001&r=1&w=2&n=12
[3] - http://marc.theaimsgroup.com/?t=102520044100002&r=1&w=2&n=10


Avalon
Editor: Berin Loritsch

The Avalon team is in the process of identifying the requirements for a new version of the Avalon Framework. The changes are minimal, and focus on a tighter definition of the contract between the container and the component. The container is the code that manages all the components and how to access them. The Avalon team has identified some anti-patterns related to its use, and wants to provide a way to make it easier to use correctly.

What we want to find out from the community at large is:

1) Are you currently using Avalon in one of your projects?

2) If not, what would it take for you to consider using it on a future project?

3) If yes, what did you like best? What were your greatest challenges? If you could choose one way to improve Avalon, what would it be?

Slated for the next version of Avalon already:

1) Enhanced Meta Data. We are unifying the way we define meta data for the components. This allows the component to be used in any Avalon compliant container with zero issues. Previously you had to find out how any one container defined meta information (like version, whether the component is threadsafe or not, etc.).

2) (Tentative but likely) Standard way of extending the component lifecycle. Avalon already has a rich lifecycle management system, but sometimes you need an application specific extension. We have plans of allowing that to happen, and use any of the existing containers.

3) Enhanced tutuorials, user documentation. The new docs (when written) will focus first on how to use Avalon (the biggest complaint about our documentation). It will then present the anti-patterns that Avalon is supposed to address, and the patterns it uses to solve those issues.


Ant
Editor: Rob Oxspring

Conor MacNeill introduced some documentation about his Ant2 proposal and this lead to a discussion of how we could make ant projects more object oriented and reusable, including a look at how other systems achieve a similar result [1]. In particular the Myrmidon Ant2 proposal featured with discussion moving onto whether templating could solve the problems being faced [2].

The antidote (ant gui) project has seen a small revival this month with a couple of new developers joining forces with Christoph Wilhelms to try and drive the project forward [3,4].

The cvs freeze for Beta3 went without a hitch [5,6] and in preparation for the release Erik Hatcher and Steve Loughran lead the way updating javadocs and manual entries for various tasks [7]. In the aftermath of Beta3 some new version checks and diagnostic information have been discussed and added to aide users in getting the appropriate help later [8].

Among the task specific issues this month was a question regarding how best to add logging capabilities to elements below the task level, a number of solutions were volunteered with pros and cons to each [9]. Lou Fox has been having some problems getting the regexreplace task to do what he wants with line endings [10], also the SOS and VSS tasks were treating some $ symbols a little differently to the rest of ant [11] . With luck the fixes should be part of Ant1.5

Finally, thanks to his contribtion in the form of the new Selector API Bruce Atherton was invited to join the team of committers [12].


[1] - http://marc.theaimsgroup.com/?t=102480404800002&r=1&w=2&n=12
[2] - http://marc.theaimsgroup.com/?t=102480534600002&r=1&w=2&n=15
[3] - http://marc.theaimsgroup.com/?t=102359754500002&r=1&w=2&n=19
[4] - http://marc.theaimsgroup.com/?t=102378075700002&r=1&w=2&n=11
[5] - http://marc.theaimsgroup.com/?t=102467096900003&r=1&w=2&n=12
[6] - http://marc.theaimsgroup.com/?t=102478669600003&r=1&w=2&n=2
[7] - http://marc.theaimsgroup.com/?t=102436209200002&r=1&w=2&n=17
[8] - http://marc.theaimsgroup.com/?t=102493495300002&r=1&w=2&n=10
[9] - http://marc.theaimsgroup.com/?t=102338712200003&r=1&w=2&n=12
[10] - http://marc.theaimsgroup.com/?t=102459759100001&r=1&w=2&n=13
[11] - http://marc.theaimsgroup.com/?t=102481925900001&r=1&w=2&n=13
[12] - http://marc.theaimsgroup.com/?t=102531237400002&r=1&w=2&n=9


Commons
Editor: Rob Oxspring

There were two main discussions applying to the whole of commons this month: Thanks to mass approval the new commons-user list was set up to allow users to find solutions without the intimidation of votes, commits and similar discussion [1]. The more controversial discussion regarded the take up of maven betas for the build process in various components, can we require betas for building? can we drop ant support without a formal vote? See what you think [2].


[1] - http://marc.theaimsgroup.com/?t=102451084800002&r=1&w=2&n=25
[2] - http://marc.theaimsgroup.com/?t=102468327700006&r=1&w=2&n=99

Collections recieved a donation of code from avalon this month [3] and it was decided that some naming and layout conventions were needed [4,5]. The implementation of the primitive collections came under scrutiny as Ola Berg noticed that myIntList.contains("Foo"); would throw a ClassCastException rather than returning false, the decision seems to be that they are best as they are but the pros and cons are all presented [6]. The same theme was tackled in a thread that went on to discuss the differences and similarities between assertions, predicates and closures [7].


[3] - http://marc.theaimsgroup.com/?t=102458650800005&r=1&w=2&n=25
[4] - http://marc.theaimsgroup.com/?t=102478064000001&r=1&w=2&n=15
[5] - http://marc.theaimsgroup.com/?t=102398907200001&r=1&w=2&n=25
[6] - http://marc.theaimsgroup.com/?t=102477824200003&r=1&w=2&n=20
[7] - http://marc.theaimsgroup.com/?t=102430815500002&r=1&w=2&n=20

Comparators came under discussion the month too: How should nulls be treated in comparators? The NullFirstComparator and NullLastComparators were proposed and implementations discussed [8]. In collaboration with BeanUtils a BeanComparator was posted comparing the results of a method or property for order [9] although the class seems to be homeless at the moment. Also regarding collections was some discussion to the thread safety of StaticBucketMap [10] and a proposed reorganisation of util and collections [11].


[8] - http://marc.theaimsgroup.com/?t=102347883700003&r=1&w=2&n=22
[9] - http://marc.theaimsgroup.com/?t=102345448200001&r=1&w=2&n=18
[10] - http://marc.theaimsgroup.com/?t=102503642500002&r=1&w=2&n=21
[11] - http://marc.theaimsgroup.com/?t=102504081900002&r=1&w=2&n=14

CLI had some issues with how best to support options such as java's -D see the discussion [12] for full details. Plans are afoot to move into the commons proper and make a release, see the comments and action plan [13].


[12] - http://marc.theaimsgroup.com/?t=102402777700001&r=1&w=2&n=11
[13] - http://marc.theaimsgroup.com/?t=102336826000003&r=1&w=2&n=17

Betwixt also has plans to move to proper in preparation for a 1.0 release [14], but there may be some a couple of bugs to resolve first [15,16] along with some new features that Stephen Colebourne wants to add [17].


[14] - http://marc.theaimsgroup.com/?t=102327447100004&r=1&w=2&n=10
[15] - http://marc.theaimsgroup.com/?t=102384358400001&r=1&w=2&n=10
[16] - http://marc.theaimsgroup.com/?t=102392973900001&r=1&w=2&n=12
[17] - http://marc.theaimsgroup.com/?t=102400292600005&r=1&w=2&n=14

Elsewhere in commons there was the release for JXPath 1.0 [18], how the discovery package should discover its configuration [19] and a discussion as to the distinction between BeanUtils, Reflect and Introspect [20]. Components new to commons were also proposed this month; Berin Loritsch introduced a component to find out how many CPUs are available on a machine and similar information [21], Patrick Luby is planning on separating tomcat's Daemon code into commons [22] and Avalon-Excalibur began the process of integrating its components into commons effort [23].


[18] - http://marc.theaimsgroup.com/?t=102423733200004&r=1&w=2&n=11
[19] - http://marc.theaimsgroup.com/?t=102510710000006&r=1&w=2&n=11
[20] - http://marc.theaimsgroup.com/?t=102435473700001&r=1&w=2&n=26
[21] - http://marc.theaimsgroup.com/?t=102492741300004&r=1&w=2&n=12
[22] - http://marc.theaimsgroup.com/?t=102461582900003&r=1&w=2&n=10
[23] - http://marc.theaimsgroup.com/?t=102455617000003&r=1&w=2&n=19


Jetspeed
Editor: David Sean Taylor

The Jetspeed team has spent the month working towards the release of Jetspeed 1.4 Beta in early July. This is our first beta release, substantiating a significant improvement in quality and features. The Jetspeed 1.4 Beta release will include the following new features:


Fix all major and critical bugs
New Pluggable Security Model, decoupled from Turbine. New Interfaces for Authentication and Authorization services.
New Security Registry
Customizer support for Security
Portlet ids
Multiple portlet instances supported on one page
New link tool $jslink
Portlet References
Performance improvements
Profile Browser
New WebPage Portlet
Multiple Template Roots
XML Media Type support
Database Browser
Aggregate Portlet
Unit Testing
HTTP Basic Authentication in Web Page Portlet
Registry categories
Id Generator service


Log4j
Editor: Ceki Gülcü

The month started with a question by John Armstrong [1] on whether log4j offered any guarantees on binary compatibility between various versions. To which Ceki replied by stating [2] the current policy of not removing deprecated methods until at least two release cycles are completed. This reply did not seem to satisfy John Armstrong and a long discussion ensued. A historical perspective [3] seemed to satisfy most people, at least the discussion petered off.


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

Mike McAngus started [4] a discussion about timezone and locale related issues in log4j date formats. James Cakalic and Mike discussed the importance of the decimal character separator. Possible performance improvements were also suggested. Mark Womack submitted code for timezone support for date elements of pattern layout. Unfortunately, the code was anonymous and we could not take into consideration. The idea seemed to catch on though.


[4] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102209832808942&w=2
[5] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102420694310844&w=2

Ceki asked for clarifications [6] on java buffered IO because his experience did not match the myth. Georg Lundesgaard mentioned [7] the character conversion buffering aspect as explained in the OutputStreamWriter javadocs.


[6] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102326443025158&w=2
[7] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102327620700816&w=2

Costin Manolache related his experience [8] with configuring log4j with JMX. He mentioned the web-application logging insulation problem. In response, Ceki wrote a specification [9] for solving the logging separation problem. This was followed by a promising discussion [10] on Tomcat-dev.


[8] - http://marc.theaimsgroup.com/?l=log4j-dev&m=102412323003656&w=2
[9] - http://qos.ch/containers/sc.html
[10] - http://marc.theaimsgroup.com/?t=102510381000001&r=1&w=2

Mark made a proposal [11] for a new log4j component called "Receiver."


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


Lucene
Editor: Otis Gospodnetic

1.2 released on June 12, 2002:

This is its first release since it migrated from Sourceforge to Jakarta. This release includes fixes for a number of bugs, improved query parsing, etc. All changes can be seen here: http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-lucene/CHANGES.txt?rev=1.15

Lucene Sandbox repository has been added. The plan is to give the commit rights for that repository more freely, and allow developers to use that repository for storing outside contributions, so that we don't have to rely on mailing list archives. Also, the Sandox will, and already does, host some contributions that are still in development. Currently, a web crawler with hooks for text indexing with Lucene is being developed there: http://cvs.apache.org/viewcvs/jakarta-lucene-sandbox/contributions/webcrawler-LARM/

This project is looking for developers, so if you would like to get involved with web crawler and text indexing development, this is a good opportunity to do so.

Its well-written documentation is available in a few formats here: http://cvs.apache.org/viewcvs/jakarta-lucene-sandbox/contributions/webcrawler-LARM/doc/

1.3-dev1 version:

Development of the next release, version 1.3, has started. Brian Goetz added preliminary support for range queries ( TO ), and we applied some contributed fixes that make it possible to use Lucene on read-only media, like CD-ROMs.

A list of items that we would like to work on in the future is listed in our TO-DO list: http://cvs.apache.org/viewcvs/jakarta-lucene/TODO.txt

I am in the process of applying patches/contributions that further improve the query parser by allowing Lucene API users to programmatically specify the logical operator between query terms that they want to use (AND or OR). In addition to that, a contribution burried in the list archives will advance Lucene's query support by allowing queries such as "Java app*" (find all documents containing a phrase "Java app", followed by anything). This will allow one to find documents containing either "Java application" or "Java applet" or anything else that starts with "Java app".


ObJectRelationalBridge
Editor: Thomas Mahler

OJB joined Jakarta in June!

ObJectRelationalBridge (OJB) is an Object/Relational mapping tool that allows transparent persistence for Java Objects against relational databases.

OJB provides multiple APIs::

A full featured ODMG 3.0 compliant API.
A JDO compliant API (work in progress)
A low-level PersistenceBroker API which serves as the OJB persistence kernel.

There has been a long discussion on using the commons-logging API for OJB. OJB currently uses its own wrapper API for logging. We came up with a proposal to extend commons-logging with features we need urgently for OJB logging [1].

There has also been a discussion on a proposal [2] that tries to define an implementation strategy for the new OJB JDO layer. Matthew Baird answered [3] that he will assemble a draft for a functional specification of the proposed Object Transaction Management layer. This document is almost finished and will be the base for our next implementation steps.


[1] - http://archives.apache.org/eyebrowse/ReadMsg?listName=ojb-dev@jakarta.apache.org&msgNo=274
[2] - http://db.apache.org/ojb/jdo/jdo-proposal.html
[3] - http://archives.apache.org/eyebrowse/ReadMsg?listName=ojb-dev@jakarta.apache.org&msgId=382893


ORO
Editor: Daniel F. Savarese

Jakarta-Oro development has continued its trend of making small incremental additions and fixes in response to user requirements, rather than the major development initiatives that have been discussed. The most recent set of fixes and improvements were made available in a 2.0.7-dev-1 developer release on June 27th. The most pressing need for the project is the contribution of comprehensive unit tests for the core Perl regular expression classes. Without these, we will not be able to quickly press forward toward Perl 5.6 (soon 5.8) compatibility. Long term goals are to include factory class(es) for plugging in any regular expression package using the org.apache.oro.text.regex interfaces, provide a J2ME version of the package, and build more commonly used high-level text processing functionality into the package, becoming a general purpose Java text-processing toolkit rather than strictly a regular expression package.


POI
Editor: Avik Sengupta

The POI team made two releases in June. A production release of version 1.5.1 on June 17, and a dev milestone release 1.7.0 on June 24. The dev release was notable for the inclusion of a large body of formula support. This was preceeded by some expected wrestling with the undocumented parts of the excel file format [2].

The dev list was animated for a while on the issue of whether poi should have a calculation engine built in. Andy summarised the discussion [3].

To better understand how POI and its components are being used in practice, a call for case studies was made [4]. These have been put up on the project site [5].

There have been many requests for a java viewer for excel files. Andy hacked up "Sucky Viewer" as a GUI component built on POI/HSSF [6].

Logging has been the cause of a large number of problem reports. It was therefore decided that POI would have logging disabled by default, and thus no extra libraries would be required to run POI [7]. However, developers would have the option of enabling logging at runtime using either commons logging or log4j. This decision was further validated when there were reports of significant performance hit with logging enabled [8]. As a result, the 1.5.1 and 1.7-dev versions have logging disabled.

The POI team is working towards a 2.0 release that adds the functionality for formula, charting and Word documents. There are many feature requests that have been asked for, but these are the top priority at the moment [9].


[1] - http://poi.apache.org/hssf/formula.html
[2] - http://marc.theaimsgroup.com/?l=poi-dev&m=102382900822300&w=2
[3] - http://marc.theaimsgroup.com/?l=poi-dev&m=102468743701331&w=2
[4] - http://marc.theaimsgroup.com/?l=poi-dev&m=102371435712172&w=2
[5] - http://poi.apache.org/casestudies.html
[6] - http://marc.theaimsgroup.com/?l=poi-user&m=102476270711166&w=2
[7] - http://marc.theaimsgroup.com/?t=102333893500001&r=1&w=2
[8] - http://marc.theaimsgroup.com/?l=poi-user&m=102518419020006&w=2
[9] - http://marc.theaimsgroup.com/?l=poi-dev&m=102500927422333&w=2


Struts
Editor: Joe Germuska

* Path-based action mapping in 1.1
One of the architectural advances from Struts 1.0 to Struts 1.1 involved supporting multiple applications with a single Struts controller servlet. As part of the initial implementation of this functionality, some configuration flexibility was lost: the multi-application controller only supports mapping URLs to Struts "actions" by extension (i.e. "*.do") while Struts 1.0 also supported mapping by path prefix (i.e. "/do/*"). After James Young asked if any fixes were in the works [1], Craig McClanahan pointed out some of the complexities involved [2]. Ted Husted described a possible solution and asked for feedback about whether to pursue it. [3]


[1] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8226
[2] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8234
[3] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8244

* Tiles add-in to moved to core
Craig McClanahan moved the "Tiles" add-in into the core CVS source tree from the "contrib" directory [4]. Ted Husted initiated a discussion about some code modifications to "Tiles" to make it work more closely with the core code base.[5]


[4] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8682
[5] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8621

* FormBean: Interface or Class?
The discussion about whether the "FormBean" concept was best implemented as an interface or a class resurfaced, and Craig McClanahan wrote a decisive response explaining the motivation for maintaining it as a class.[6] In summary, designing FormBean as an interface would facilitate inappropriate tangling of the "model" layer with the "view" layer, while making it a class of its own encourages clean separation of those layers.


[6] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8253

* Struts and the Java Standard Tag Library (JSTL)
After announcing the 1.0 release of the JSTL, Shawn Bayern offered assistance towards integrating the rich Struts tag libraries with the JSTL, which in many cases offers equivalent functionality.[7] Craig McClanahan indicated that a likely goal for a post 1.1 release of Struts would be thorough integration with the JSTL expression language, and aiming towards an eventual replacement of the Struts "bean" and "logic" tag libraries with the equivalent tags from JSTL.[8]


[7] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8434
[8] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8439

* New Committer: James Holmes
James Holmes, author of the popular Struts Console tool, was proposed as a committer by Ted Husted [9] and was accepted unanimously.


[9] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8341

* Steps towards Struts 1.1b2
As much of the activity on the list in June involved "swatting" bugs in the current 1.1b1 release, Craig McClanahan proposed steps towards a Struts 1.1b2 by around July 8th [10] The requirements for the next beta are basically closing any remaining bugs and improving documentation of new Struts features. Committers responded promptly with +1 votes and further contributions.


[10] - http://nagoya.apache.org/eyebrowse/ReadMsg?listName=struts-dev@jakarta.apache.org&msgNo=8691

* Other Struts News:


24 June 2002 - Tiles Article in DeveloperWorks
23 June 2002 - Struts Controller UML Diagrams
12 June 2002 - Struts Console version 1.12.1
12 June 2002 - Easy Struts 0.2
12 June 2002 - Artimus 0.4
11 June 2002 - Struts Builder v0.4 beta
07 Jun 2002 - O'Reilly Chapter 7
05 Jun 2002 - Struts Console version 1.12
07 Jun 2002 - Easy Struts on SourceForge
04 Jun 2002 - FL Child Support Payments: Powered by Struts
03 Jun 2002 - strutsGuessingGame1.0

* Struts News and Status page: http://struts.apache.org/news.html


Taglibs
Editor: Shawn Bayern

On June 21, Jakarta Taglibs released version 1.0 of the "Standard Taglib," a compliant implementation of the JSP Standard Tag Library (JSTL), which is a new specification from the Java Community Process. The Taglibs group has also begun efforts to reorganize its web site and improve the process for responding to new submissions and ideas.


Tomcat
Editor: Henri Gomez

The TOMCAT 5.0 proposal was launched by Remy. The goal was to design the next generation Tomcat, using the best parts of Tomcat 3.3 and 4.x, using an improved version of coyote (2.0) code as the core, and using catalina 2.0 as the servlet container. The great thing in that proposal is that members from the 2 olds teams, 3.3 and 4.x agreed on contributing and working together putting the best they learn from 3.3/4.x. There was a proposal from the Avalon team to use Avalon as core, but it was rejected by Remy, who would prefer to have something more suitable and lighter for the TOMCAT core.

Pier then ask for a Tomcat HA (High Availability), arguing that Tomcat 4.x (he didn't speak about 3.2 or 3.3) was too unstable so it couldn't use it in his production site. There was then a lengthy discussion about stability which should be a major goal and so on. Many people (tomcat-dev) reported having no problems with Tomcat 4.0 or 3.3. Note, the thread was conducted at the same times that many of us performed extensive tests on mod_jk 1.2.0 and so tested the connector with Apache 1.3/2.0 and Tomcat 3.3/4.0.4 to detect failure in the connector (or in tomcat), and it appears that there are no major problems with both 3.3/4.0.4.

As some writers commented, the stability of a web application depends on many parts, tomcat being one of them, the real java application and remote side (SQL/enterprise applications) being also mandatory.

To summarise, I could say that all of us (tomcat developpers) want to have the stablest engine possible and the thread is open.

The major goals for Apache Tomcat 5.0 are to:

Improve scalability, reliability and performance over previous versions
Have simpler/cleaner code, so more people can get involved
Merge of the various ideas in 3.x and 4.x
Get the community together
Provide maximum modularity and compliance to the standards
Make it easy to continue to maintain the existing codebases

Posted by Tetsuya Kitahata at 08:48 PM