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 [EMAIL PROTECTED]

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@jakart
a.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@jakart
a.apache.org&by=thread&from=219451>
[6] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakart
a.apache.org&by=thread&from=218247>
[7] -
<http://archives.apache.org/eyebrowse/SearchList?listId=&listName=genera
[EMAIL PROTECTED]&searchText=Sun+saids+Opensource+is+bad&
defaultField=subject&Search=Search>
[8] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakart
a.apache.org&by=thread&from=213038>
[9] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=general@jakart
a.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://jakarta.apache.org/avalon/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://jakarta.apache.org/commons/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@ja
karta.apache.org&by=thread&from=227991>
[2] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@ja
karta.apache.org&by=thread&from=231341>
[3] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=commons-dev@ja
karta.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 <access> element, the <allow-if-owner> element:

<access action="*">
    <allow-if-owner/>
</access>

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.u
ser>

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?[EMAIL PROTECTED]
pache.org&msgNo=1413>
[3] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=ojb-user@jakar
ta.apache.org&by=thread&from=218099>
[4] -
<http://archives.apache.org/eyebrowse/BrowseList?listName=ojb-dev@jakart
a.apache.org&by=thread&from=215588>
[5] -
<http://archives.apache.org/eyebrowse/SearchList?listId=&listName=ojb-de
v%40jakarta.apache.org&searchText=%22%5Bvote%5D+long+transac
tions%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://jakarta.apache.org/struts/userGuide/release-notes-1.1-b2.html>




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to