+1 On Tuesday, September 15, 2009, Jeremy Hughes <hugh...@apache.org> wrote: > The Aries proposal thread has now gone quiet and we would like to call > a vote to accept Aries into the Incubator. There has been some good > discussion with a few changes to the proposal including the addition > of initial committers, increasing the diversity of committers from the > start. The proposal is included below and is also at: > > http://wiki.apache.org/incubator/AriesProposal > > Please cast your votes: > > [ ] +1 Accept Aries for incubation > [ ] +0 Indifferent to Aries incubation > [ ] -1 Reject Aries for incubation (please help us understand why) > > Thank you. > > ---------- > Apache Aries > Abstract > > The Aries project will deliver a set of pluggable Java components > enabling an enterprise OSGi application programming model. This > includes implementations and extensions of application-focused > specifications defined by the OSGi Alliance Enterprise Expert Group > (EEG) and an assembly format for multi-bundle applications, for > deployment to a variety of OSGi based runtimes. > > Proposal > > It is a goal of the Aries project to provide a natural home for open > source implementations of current and future OSGi EEG specifications, > including the opportunity for the collaborative development of > compliance tests, and an environment to demonstrate the composition of > these technologies and to explore areas where EEG specifications lack > coverage. A further goal of this project is to leverage experience > gained from it to inform contributions to OSGi EEG requirements and > specification documents. > > Aries will offer an enterprise OSGi application programming model that > enables applications to leverage Java EE and other enterprise > technologies and to benefit from the modularity, dynamism and > versioning capabilities of OSGi. A significant feature of Aries will > be a container for OSGi Blueprint components - an implementation of > the new OSGi v4.2 Blueprint component model that defines a standard > dependency injection mechanism for Java components, which is derived > from the Spring framework and extended for OSGi to declaratively > register component interfaces as services in the OSGi service > registry. > > In addition, the Aries project will develop a model for assembling an > application/subsystem into a deployable unit, consisting of multiple > bundles, as an archive which may include metadata that describes the > version and external location of the application's constituent bundles > or which may contain the bundles directly. > > The Aries project will deliver run-time componentry that supports > applications, running in an OSGi framework, exploiting enterprise Java > technologies common in web applications and integration scenarios > including web application bundles, remote services integration and > JPA. The project is not expected to deliver a complete application or > integration server runtime but will instead deliver enterprise > application componentry that can be integrated into such runtimes. The > project will develop extensions that go beyond the OSGi EEG > specifications to provide a more complete integration of OSGi > modularity with Java enterprise technologies, in particular delivering > support that includes but is not restricted to: > > * isolated enterprise applications composed of multiple, versioned > bundles with dynamic lifecycle. > * declarative transactions and security for Blueprint components > * Container-managed JPA for Blueprint components > * Message-driven Blueprint components > * Configuration of resource references in module blueprints. > * Annotation-based Blueprint configuration > * Federation of lookup mechanisms between local JNDI and the OSGi > service registry. > * Fully declarative application metadata to enable reflection of > an SCA component type definition. > > In order to maximise the potential scope of Aries adoption it is > anticipated the project will remain agnostic of a number of > complementary technologies and projects. It is the expectation that > Aries will therefore not be delivering components such as: an > application or integration server runtime kernel; a persistence > provider; distribution provider; a deployment provider or a Web > container. Aries will instead seek to enable the use of such > components from other projects. > > Background > > OSGi is a mature and Java modularity technology that is well-used in > many environments but, in the enterprise space, has more typically > been exploited by the internals of the runtime infrastructure than the > applications that run on it. This is primarily because of a lack of a > clear enterprise OSGi application programming model and implementation > of OSGi-enabled Java technology to support enterprise applications. > OSGi specifications are specified and maintained by the OSGi Alliance > which recognized this state of affairs several years ago and > established the Enterprise Expert Group within the Alliance to focus > specifically on the needs of enterprise applications. The objective of > this project is to deliver open source implementations of these > application-centric technologies to enable the development of > application components, benefiting from the modularity of OSGi > combined with standards-based programming models, which can be > deployed to a variety of target runtimes. > > Rationale > > Aries aims to build a community of developers interested in the > delivery of software components that support an enterprise OSGi > programming model and which can be integrated into a number of > different runtime environments. Apache hosts the Felix project which > provides an OSGi framework implementation and a variety of projects > which provide technologies exploited by enterprise application > components as well as projects which provide runtimes to host > application components. There is currently no Apache project focussed > on OSGi enterprise applications that is independent from both the OSGi > framework and the enterprise runtime environment in which application > components are hosted. By maintaining independence of both the target > runtime and underlying OSGi framework it is our intention to build the > broadest possible community of developers for Aries, and to maximize > the potential environments where Aries componentry can be used. > > Initial Goals > > We will initially focus on the Blueprint container and extend this > with enterprise features such as support for container managed JPA and > container managed transactions. Another initial focus area will be the > contribution of code to support the assembly of isolated, multi-bundle > applications that can be deployed as a unit. > > Current Status > Meritocracy > > The Aries contributors recognize the desirability of running the > project as a meritocracy. We are eager to engage other members of the > community and operate to the standard of meritocracy that Apache > emphasizes; we believe this is the most effective method of growing > our community and enabling widespread adoption. > > Community > > OSGi is a mature Java modularity technology that is well-used in many > environments but, in the enterprise space, has more typically been > exploited by the internals of the runtime infrastructure than the > applications that run on it. This is primarily because of a lack of a > clear enterprise OSGi application programming model and implementation > of OSGi-enabled Java technology to support enterprise applications. > There is a need for open source implementations of these technologies > and there is currently no Apache project focused on the wider goal of > delivering components for an enterprise OSGi application programming > model. We recognise that projects comprising multiple components face > challenges maintaining cohesion as a community but believe the common > focus on the enterprise OSGi programming model is a strong theme that > will guide the activities of the community as a whole. Aries aims to > build a community of developers interested in the definition and > delivery of software components that support an enterprise OSGi > programming model and which can be integrated into a number of > different runtime environments. By maintaining independence of both > the target runtime and underlying OSGi framework it is our intention > to build the broadest possible community of developers. > > Alignment > > The purpose of Aries is to develop implementations of > application-centric enterprise OSGi technologies that run on an OSGi > framework, but not a specific one, and are used by application > components deployed into a variety of runtime environments without > being tied to any specific environment. For this reason we believe > Aries is a project whose community would be best served if it could > leverage but be independent from the communities that provide > underlying OSGi framework technology and enterprise application server > and integration bus technologies, all of which exist as open source > efforts within Apache and elsewhere. We expect, for example, that some > code developed in Aries will run directly on top of an OSGi framework > such as Felix and that applications exploiting Aries technologies > could be deployed to runtimes such as ServiceMix and Geronimo. > > Avoiding the Warning Signs > Orphaned products > > The contributors are leading vendors of OSGi-based technologies and > have a long standing in the OSGi Alliance whose application-centric > specifications this project will implement. There is minimal risk of > this work becoming non-strategic and the contributors are confident > that a larger community will form within the project in a relatively > short space of time. > Inexperience with Open Source > > Many of the committers have experience working in one or more open > source projects including Apache Geronimo, Felix, ServiceMix, OpenEJB, > and CXF. > > Homogeneous Developers > > The list of initial committers, geographically distributed across the > U.S. and Europe, consists of developers from two companies - IBM and > Progress software - with similar goals but for different scenarios. > Many of these developers are experienced Apache committers already and > all are experienced with working in distributed development > communities. It is our hope that, through the incubator, further > contributors with a broad background of experience but common interest > in enterprise OSGi technologies will become involved with this > project. > > Relationships with Other Apache Projects > > Aries will have a potential relationship with the Apache projects > listed in this section. These projects all serve different purposes > from Aries and have their own communities. It is hoped that each of > these communities will become involved with Aries and help to build a > diverse but independent Aries community. > > Apache Felix Karaf - > http://felix.apache.org/site/apache-felix-karaf.html Apache Felix > Karaf is an OSGi based runtime which provides a lightweight container > onto which various components and applications can be deployed. It is > related to Aries: > > 1. as a target OSGi based runtime to which Aries applications can > be deployed. In this role, Karaf is a consumer of Aries technology. > > Apache Felix - http://felix.apache.org/site/index.html Apache Felix is > primarily a core OSGi framework implementation. It is related to > Aries: > > 1. as an underlying OSGi framework implementation and potentially > other extensions that can be used both by Aries run-time components > and the applications which use them. > > Apache Geronimo - http://geronimo.apache.org/ Apache Geronimo is a > server runtime framework and fully certified Java EE 5 application > server runtime. It is related to Aries in two ways: > > 1. as a target runtime to which Aries applications can be deployed. > In this role, Geronimo is a consumer of Aries technology. > 2. the Geronimo blueprint sandbox - > http://svn.apache.org/repos/asf/geronimo/sandbox/blueprint/ - contains > an implementation of the OSGi Blueprint container which will be moved > to Aries. > > Apache Tuscany - http://tuscany.apache.org/ Apache Tuscany provides a > comprehensive infrastructure for SOA development and management that > is based on Service Component Architecture (SCA) standard. It can be a > consumer of Aries technology to provide an Aries SCA implementation > type for composing Aries applications in coarse grained and > potentially heterogeneous service assemblies. > > Apache CXF - http://cxf.apache.org/ Apache CXF provides a Java Web > Services framework for distributed computing and remote service > realization and invocation using API's such as JAX-WS and JAX-RS. It > also provides the OSGi Remote Services (OSGi RFC 119) reference > implementation in a subproject: > http://cxf.apache.org/distributed-osgi.html. It is related to Aries in > the following way: > > 1. As Remote Services is a significant Enterprise specification > being produced by the EEG, it is expected that consumers of Aries will > be looking for an implementation of this specification. CXF provides > an implementation of this specification which already has a > significant active community. The Aries project will make it easy for > Aries consumers to consume the CXF Remote Services implementation, > possibly by providing an instance of the application model that > references the CXF Remote Services implementation. This would mean > that end users will seamlessly pull in the required componen
-- Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org For additional commands, e-mail: general-h...@incubator.apache.org