glassfish metro - java web services stack

Post on 05-Dec-2014

3.100 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

1

<Insert Picture Here>

Glassfish Metro – Java Web Services Stack

Martin Grebac

Metro Project Lead

3

The following is intended to outline our general product

direction. It is intended for information purposes only,

and may not be incorporated into any contract. It is

not a commitment to deliver any material, code, or

functionality, and should not be relied upon in making

purchasing decisions.

The development, release, and timing of any features

or functionality described for Oracle’s products remains

at the sole discretion of Oracle.

4

Agenda

• Overview

• Architecture

• Demos

• Roadmap

• Q&A

5

What is Metro?

Metro is one-stop shop for all your web services

needs.

6

What is Metro?

• Java Web Services Stack

• Part of GlassFish project

• Production Quality

• High-Performance

• Interoperability

– Tested for Interop with RSP 1.0 and WS-I BSP 1.1

– Tested with WCF Stack 3.0 / 3.5 versions

– Tested with other Oracle 11g products (security)

• X.509, SAML, Username Token against SOA, OSB, ADF,

WLS

7

METRO = JAX-WS RI + WSIT (Tango)

• JAX-WS RI

– Implements Java API for XML Web Services (JAX-WS)

– Provides core web services support

– Extensible and Pluggable Architecture

• Web Services Interoperability Technology (WSIT)

– Provides Quality Of Service (QoS) support

• Security, Reliability, Transactions

– Implementation of WS-* Specifications

• Interoperability with .NET 3+

8

Architecture

9

Core Features

• JAX-WS – Easy to use Web services API

• POJO concepts via annotations

– Descriptor free programming

• Databinding (new), Encoding, Protocol, Transport

independence

• Default integrated with Java Architecture for XML

Binding (JAXB)

– Java platform API

– 100% schema support

10

Advanced Features

• Bootstrapping Communication and Configuration

– WS-MetadataExchange

– WS-Policy

• Quality of Service

– Reliable Message Delivery

– Atomic Transactions

– Secured Communication

• Transparent to application code

11

Reliable Messaging

• Message Delivery Protocol

• Different Message Delivery Assurance Modes

– Exactly Once, At Least Once, At Most Once

– In Order – can be combined with above

• Incomplete Message Sequence Handling

– Discard entire sequence, discard after first gap

– Enforcing same-origin on a message sequence

• Sequence bound to a WS-SC session

• Supports High Availability

<wsrmp:RMAssertion>

<wsp:Policy>

<wsrmp:SequenceSTR/>

<wsrmp:DeliveryAssurance>

<wsp:Policy>

<wsrmp:ExactlyOnce/>

<wsrmp:InOrder/>

</wsp:Policy>

</wsrmp:DeliveryAssurance>

</wsp:Policy>

</wsrmp:RMAssertion>

12

Transactions

• Message Delivery Protocol

• Different Message Delivery Assurance Modes

– Exactly Once, At Least Once, At Most Once

– In Order – can be combined with above

• Incomplete Message Sequence Handling

– Discard entire sequence, discard after first gap

– Enforcing same-origin on a message sequence

• Sequence bound to a WS-SC session

• Supports High Availability

wsp:Policy wsu:Id=“TransactedPolicy”>

<wsat:ATAssertion wsp:optional=“true”/>

</wsp:Policy>

13

Security

• Supports Security Mechanisms

– X.509

– Username Token

– Saml Token

– Kerberos …

• Configurable Through WS-Policy

configuration WSDL

– Better in NetBeans

• WS-Security, WS-Trust, STS, …

14

Programming Model

• Develop using JAX-WS APIs

– Server side: @WebService

– Client side: use wsimport.sh to generate client proxy

• Advanced features in configuration file

– Server side: wsit-$endpointClassName.xml

– Client side: wsit-client.xml

– generate through NetBeans GUI

15

Latest Features

• High Availability

– Since Metro 2.1

• Works with GlassFish 3.1(.x) Cluster

• Replication of stateful session data

– Reliable Messaging

• Sequences, Unacknowledged Messages, …

– Secure Conversation

• Secure Conversation session

– Security

• Nonce Manager

16

Latest Features

17

Latest Features

18

Latest Features

• Security Improvements

– RSA-SHA256, 384, 512

– Use of JAAS KeystoreLoginModule

– Policy Alternatives for client authentication tokens

• Modular Databinding

– JAXB RI / Moxy / SDO switchable

• Lots of small improvements and bugfixes

19

DEMO • “Hello World” Service

• Message Level Security

• Reliable Message delivery

20

Which version?

• Metro 2.1.1

– Latest greatest, download from http://metro.java.net

– Production ready version

– High Availability

• Metro 2.2

– In development

– Aligned with GlassFish 3.1.2

– Available early next year

• Metro 2.2.1, 2.3 - TBD

21

Community

• Lots of Adoption

– Java SE/EE SDK, IBM JDK, GlassFish, Weblogic, …

• Active mailing lists and forum

• Extensible

– JAXB, JAX-WS extensions

– Spring, JSON, SMTP, …

• Be Active!

– Vote on issues, provide patches, improve and/or review our

docs

22

Summary

• METRO – Full featured WS Stack

• Popular in Java Community

• Many advanced features

• Interoperability (Microsoft .NET)

• High Performance

• Integrated with GlassFish

• Running standalone on Servlet containers

23

Q&A

24

Interested?

• http://metro.java.net

– http://wsit.java.net

– http://jax-ws.java.net

– http://jaxb.java.net

– http://glassfish.java.net

• users@metro.java.net

top related