You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by de...@struts.apache.org on 2005/01/07 01:53:05 UTC

[Apache Struts Wiki] New: TilesTopLevel

   Date: 2005-01-06T16:53:05
   Editor: TedHusted
   Wiki: Apache Struts Wiki
   Page: TilesTopLevel
   URL: http://wiki.apache.org/struts/TilesTopLevel

   Intial draft of a proposal to create a top level Tiles proejct.

New Page:

DRAFT Proposal for Tiles Composite Page Project DRAFT

06 January 2005; David Geary, Nathan Bubna, Matthias Wessendorf.

(0) rationale    
    
    Tiles is an innovative approach to composing server pages from reusable fragments. In addition to the usual tag-based strategy, Tiles offers a XML descriptor strategy which allows for the creation of declarative "virtual" pages. The descriptor strategy give Tiles pages a object-orientated feel that simplifies reuse. 
    
    Teams worldwide have been using Tiles in production for more than four years. The package continues to gain popularity and has been implemented for Jakarta Velocity and JavaServer Faces (Apache MyFaces).
    
    Rather than continue to create and maintain Tiles in three separate places, the developers believe it would benefit the Tiles community to create a top-level Tiles project, where the core implementation and extension could live together. 

(0.1) criteria

Meritocracy:

    The Tiles project started as the work of a sole developer, Cedric Dumoulin, inspired, in part, by the Template taglib created by David Geary for the Struts framework. As the community and codebase grew, Cedric joined the Jakarta Struts team and donated the code to the ASF. Tiles has been maintained jointly by the Struts team ever since.
    
    As of Struts 1.1, Tiles was made part of the standard distribution. Although originally targeted for JavaServer Pages, developers using other view technologies, like Velocity and JavaServer Faces, have created Tiles extensions.
    
    The idea of making Tiles a standalone package came up on the Struts Dev list as part of the routine development discussions. There being sufficient interest in making Tiles a project in its own right, the group decided to draft this proposal.
    
    The developers now interested in Tiles are experienced ASF Committers, fully versed in the ways of meritocracy. 
    
Community:

    Originally a Struts extension, Tiles now enjoys a wide range community of users among Velocity and JSF developers, as well as Struts developers. 
    
    By making it top-level project, the Tiles community hopes to broaden its range further, so that it can be used by other frameworks.

Core Developers:

    The proposed Tiles committers come from various ASF projects.          
    
Alignment:

    Tiles is strongly aligned with three popular ASF projects: MyFaces, Struts, Velocity.
    
(0.2) warning signs

Orphaned products:

    Tiles is a mature and growing product, in no danger of being orphaned. 

Inexperience with open source:

    The proposed Committers are active members of Apache communities, and fully aware of what it means to be open source. 

Homogenous developers:

    The Tiles developers have only other thing in common: Tiles. The developers do not share a common employer or geography, or even framework.

Reliance on salaried developers:

    The Tiles developers work on a volunteer basis. The project does not rely on salaried developers. 

No ties to other Apache products:

    Tiles is strongly aligned with three popular ASF projects: MyFaces, Struts, Velocity.

A fascination with the Apache brand:

    The core Tile implementationa and various extensions are already under the Apache banner.
    
(0.3) subproject or top-level project 

    Right now, there are three Tiles subprojects at different ASF projects. We wish to coalese these into a single top-level project. 

(2) identify the initial source from which the subproject is to be populated

    * $[Struts Package}
    * ${Velocity Package}
    * ${JSF Package}

(2.1) identify the base name for the package

    * org.apache.tiles 

(2.2) identify the coding conventions for this package

The Java code mostly follows a Sun's standard coding conventions, including the following characteristics:

    * No newlines before braces
    * Indentation of two blank spaces (not tabs)
    * No underscores ("_") on private members
    * No "I" prefix on interfaces

(3) identify the ASF resources to be created

(3.1) mailing list(s)

    * tiles-ppmc (with moderated subscriptions)
    * tiles-commits
    * tiles-dev
    * tiles-user

(3.2) subversion repositories

    * /incubator/tiles

(3.3) jira

    * tiles-core
    * tiles-faces
    * tiles-struts
    * tiles-velocity

(4) identify the initial set of committers

    * David Geary
    * Nathan Bubna
    * Matthias Wessendorf
    * Ted Husted

(5) identify Apache sponsoring individual

    TBD (as defined in http://incubator.apache.org/incubation/Roles_and_Responsibilities.html)

####

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org