Jump to content

Eclipse Metro

From Alfawiki
Metro
Company typeOpen-source software
IndustrySoftware development, Web services
PredecessorJAX-WS RI, WSIT
FoundedJune 2007
ProductsWeb service framework, JAXB RI, JAX-WS RI, SAAJ RI, StAX (SJSXP), WSIT
OwnerEclipse Foundation (implied by "Eclipse Metro project under Eclipse Enterprise for Java (EE4J)")
Websiteeclipse-ee4j.github.io/metro/

Metro represents a robust, scalable, and user-friendly web service framework. Initially introduced as an open-source module within the GlassFish application server, it is also offered as an independent package. Its principal elements comprise: JAXB RI, JAX-WS RI, SAAJ RI, StAX (through the SJSXP implementation), and WSIT. While originally distributed under the CDDL and GPLv2 with classpath exception licenses, Metro is currently available under the .

History

The GlassFish initiative initially created two interconnected projects:

  • JAX-WS RI, serving as the reference implementation for the JAX-WS standard
  • WSIT, a Java-based implementation supporting selected WS-* protocols and facilitating improved interoperability with the .NET Framework, which relies on JAX-WS RI for its web services foundation

These projects were consolidated in June 2007 under the collective name Metro.

Features

Metro provides a comprehensive feature set that positions it competitively among web service frameworks. Early evaluations by Codehaus compared it to Apache Axis 1.x, Axis 2.x, Celtix, Glue, JBossWS, Xfire 1.2, and JAX-WS RI combined with WSIT (prior to adopting the Metro designation). Subsequently, an updated comparison by the ASF included CXF and OracleAS 10g.

The Metro distribution integrates JAXB RI, JAX-WS RI, SAAJ RI, SJSXP, and WSIT, along with essential dependencies such as xmlstreambuffer and mimepull.

Prominent features encompass:

  • Conformance to Basic Profile 1.1
  • Creation of services from POJOs
  • Support for RPC-Encoding
  • Compatibility with Spring and REST architectures
  • SOAP 1.1 and 1.2 support
  • Streaming XML processing based on StAX
  • WSDL 1.1-driven code generation for clients and servers
  • Asynchronous operations on both client and server sides

Implemented WS-* standards include:

WS-Addressing WS-Atomic Transaction WS-Coordination
WS-Metadata Exchange WS-ReliableMessaging WS-Policy
WS-Secure Conversation WS-Security Policy WS-Security
WS-Trust WSDL 1.1 Support

Supported communication protocols are:

  • HTTP
  • JMS
  • SMTP/POP3
  • TCP
  • In-VM transport

Metro extends the JAX-WS platform by providing reliable end-to-end security mechanisms, optimized transport protocols such as (MTOM) and Fast Infoset, dependable messaging services, and transactional support tailored for SOAP-based web services.

Market share

Metro ships with Java SE 6 to facilitate Web Services consumption.

It is incorporated into various application servers including:

The reference implementation of JAXB developed for Metro enjoys widespread adoption in numerous Java Web Services frameworks like Apache Axis2, Codehaus XFire, and Apache CXF, as well as across different application server platforms.

External links