This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Eclipse Metro" – news · newspapers · books · scholar · JSTOR (June 2021) (Learn how and when to remove this message) |
Original author(s) | Sun Microsystems |
---|---|
Developer(s) | Eclipse Foundation |
Initial release | September 17, 2007; 17 years ago (2007-09-17) |
Stable release | 3.0.1 / April 14, 2021; 3 years ago (2021-04-14) |
Written in | Java |
Platform | Jakarta EE |
Type | web service framework |
License | EDL 1.0 [Wikidata] |
Website | projects |
Metro is a high-performance, extensible, easy-to-use web service stack. Although historically an open-source part of the GlassFish application server, it can also be used in a stand-alone configuration. Components of Metro include: JAXB RI, JAX-WS RI, SAAJ RI, StAX (SJSXP implementation) and WSIT. Originally available under the CDDL and GPLv2 with classpath exception, it is now available under Eclipse Distribution License [Wikidata]
History
Originally, the Glassfish project developed two semi-independent projects:
- JAX-WS RI, the Reference implementation of the JAX-WS specification
- WSIT, a Java implementation of some of the WS-* and an enhanced support for interoperability with the .NET Framework. It is based on JAX-WS RI as "Web Service layer".
In June 2007, it was decided to bundle these two components as a single component named Metro.
Features
Metro compares well with other web service frameworks in terms of functionality. Codehaus started a comparison which compared Apache Axis 1.x, Axis 2.x, Celtix, Glue, JBossWS, Xfire 1.2 and JAX-WS RI + WSIT (the bundle was not yet named Metro at that time). This was later updated by the ASF to replace Celtix with CXF and to include OracleAS 10g.
Metro includes JAXB RI, JAX-WS RI, SAAJ RI, SJSXP, and WSIT, along with libraries that those components depend on, such as xmlstreambuffer, mimepull, etc.
Its features include:
- Basic Profile 1.1 Compliant
- Easily Create Services from POJOs
- RPC-Encoding
- Spring Support
- REST Support
- Soap 1.1/1.2
- Streaming XML (StAX based)
- WSDL 1.1 ->Code (Client)/(Server)
- Server and Client-side Asynchrony
Supported WS-* Standards
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 Transport protocols include:
- HTTP
- JMS
- SMTP/POP3
- TCP
- In-VM
Metro augments the JAX-WS environment with advanced features such as trusted, end-to-end security; optimized transport (MTOM, Fast Infoset), reliable messaging, and transactional behavior for SOAP web services.
Market share
Metro is bundled with Java SE 6 in order to allow consumers of Java SE 6 to consume Web Services.
Metro is bundled with numerous application servers such as:
- GlassFish
- Sun Java System Application Server Platform Edition 9.x
- Oracle WebLogic Server
- JBoss (version 5.x only)
- TmaxSoft JEUS 6.x
The JAXB reference implementation developed for Metro is used in virtually every Java Web Services framework (Apache Axis2, Codehaus XFire, Apache CXF) and Application Servers.
References
- "metro: Discover Metro". Archived from the original on 2007-07-08.
- "metro: Metro FAQ".
- Gupta, Arun (June 19, 2007). "Announcing Metro - Naming the Web Services stack in GlassFish". Miles to go…. blogs.sun.com. Archived from the original on 2009-09-26.
- "Stack Comparison". XFire. xfire.codehaus.org. Archived from the original on 2006-12-30.
- ^ "StackComparison". Apache Web Services Wiki. Apache Wiki Farm. Archived from the original on 2017-09-04.
- "Metro".
- "JAX-WS FAQ". jax-ws. Archived from the original on 2007-08-07.
- Gupta, Arun (July 22, 2007). "Metro - Now on Tomcat 6.x also". GlassFish. blogs.sun.com. Archived from the original on 2009-06-15.
External links
- Official website
- Eclipse Metro project as a part of Eclipse Enterprise for Java (EE4J)
GlassFish application server stack | |
---|---|
Core | |
Web components |
|
Web services | |
Tools |
|