Bistro!
Alexis Moussine-Pouchkine's Weblog
public enum Topic { Java, GlassFish, Tools, Sun, InFrenchInZeText, SDPY }

20080327 jeudi mars 27, 2008

GlassFish and Metro Web Services now available to Microsoft Technology Centers

I've been working with Microsoft field engineers to demonstrate Web Services interoperability for a little while now. Some of it for customers, but also for conferences from both companies.

I'm happy to report now that the GlassFish application server, its Metro Web Services technology, and its NetBeans tooling are all now available in the Paris Microsoft Technology Center.

Microsoft customers interested in Web Services interoperability now can kick the tyres of a .Net/WCF + Java EE/GlassFish combinaison with WS-Addressing, MTOM/XOP, WS-Policy, WS-ReliableMessaging, WS-Security, WS-Trust, and WS-SecrureConversation (full list) before they use it in their architectures.

Thanks to Stéphane for his support (and the Tango photograph!). Let's hope the word spreads to more MTC's around the world.

( mars 27 2008, 12:08:09 AM CET ) Permalink Comments [0]

20071006 samedi octobre 06, 2007

Série de didacticiels sur Metro & Eclipse

Metro (la partie Web Services de GlassFish) est probablement la partie du serveur d'application qui est la plus utilisée en mode autonome (sans serveur d'application ou avec un autre comme JBoss ou Tomcat). Grizzly est l'autre exemple.Laurent HUET a débuté une série de billets sur l'utilisation de JAX-WS (Metro) avec Eclipse:
• Tutoriel JAX-WS - Partie I (Projet Eclipse)
• Tutoriel JAX-WS - Partie II (Développement)

Il appréciera probablement vos lectures et commentaires!

Au passage, ceci est mon billet numéro 600 ;)

( oct. 06 2007, 12:07:12 PM CEST ) Permalink Comments [1]

20070920 jeudi septembre 20, 2007

Metro 1.0 disponible

Metro, la technologie Web Service de GlassFish (décrite ici) et interopérable avec Microsoft .Net WCF est désormais en version 1.0. Jusque là l'utilisation en production n'était pas recommandée.

Cette version qui implémente JAX-WS 2.1 et de nombreux standards WS-* est intégrée à GlassFish v2 (sorti en même temps) mais il est également utilisable dans d'autres contextes:

•  avec Java 6 (standalone): soit en utilisant le JAX-WS fourni par défaut dans le JDK, soit en mettant utilisant Metro (y compris WSIT) dans sa dernière version.
•  dans Tomcat 6, partie JAX-WS et partie WSIT
•  dans JBoss (qui certifie Metro dans ses dernières versions)

L'utilisation au sein de GlassFish apporte des optimisations de performance, une meilleure administration, des outils de test unitaires de Web Service intégré et un management (logging, monitoring) lui aussi intégré dans la console et dans l'administration en ligne de commande. Plus de détails ici. Pour des exemples de déploiements de Metro dans des métiers différents, le blog de Harold apporte des détails intéressants.

( sept. 20 2007, 07:55:00 AM CEST ) Permalink Comments [4]

20070620 mercredi juin 20, 2007

Metro, Boulot, Dodo...

Metro. JAX-WS est à la fois un standard (tout serveur d'application Java EE 5 se doit de le proposer) et une implémentation - on parle alors de JAX-WS RI (Reference Implementation) ou GlassFish JAX-WS. Son complément WSIT (Projet Tango, pour l'interop avec Microsoft WCF) pour gérer les web services avancés (standards WS-* pour la performance, la sécurité, la fiabilité, les transactions, etc...) est également open source et tous deux sont utilisables avec Java SE 6 (JAX-WS 2.0 est carrément intégré au JRE).

Ces deux technologies (JAX-WS et WSIT) peuvent être utilisées en dehors du serveur d'application GlassFish (dans une autre serveur ou en mode autonome) sans trop perdre en fonctionnalités (voir partie Dodo) et c'est pour cela que l'on parle de "Stack Web Services Open Source" sous le doux nom de Metro (référence à un transport rapide et à la technologie de tube sur laquelle elle est construite). Metro propose un support de Spring, JSON en plus d'être extensible. Vous trouverez une comparaison des différentes piles de web services ici: http://wiki.apache.org/ws/StackComparison. Metro donc.

Boulot. Le modèle de programmation de Metro est unique et basé sur des POJO. En effet avec JAX-WS, seules les fonctionnalités avancées (appels asynchrones) nécessitent de manipuler un API. Pour le reste, les annotations Java font l'affaire. Ainsi, voici l'implémentation d'un web service (simple à gauche, transactionnel à droite) :

L'utilisation de WSIT ne change rien à l'affaire du modèle de programmation puisque les attributs WSIT (sécurité, fiabilité, optimisation, ...) sont exprimés sous forme d'assertions WS-Policy dans le WSDL du service. Il n'y a pas d'API WSIT. Au delà de l'aspect communication du nouveau nom, l'arrivée de Metro apporte une simplification de la distribution (moins de jars) et une documentation et des exemples unifiés, essentiellement basés sur des POJO, de quoi se concentrer sur son métier et pas sur le framework. Boulot donc.

Dodo. En utilisant Metro intégré dans GlassFish v2 (Metro 1.0 est en Milestone 5 et intégré dans les derniers builds de GlassFish version 2 beta), on bénéficie de plusieurs fonctionnalités d'administration et de monitoring pour dormir sur ses deux oreilles : déploiement, outils de test, monitoring, statistiques de performance, log des messages échangés, règles management dynamique, configuration sécurité, audits de sécurité, analyse du temps passé dans les différentes parties de l'app serveur, transformations XSLT. Le tout en mode Web ou en ligne de commande. Ce sont ces fonctionnalités qui sont en partie perdues avec l'utilisation de Metro dans un autre conteneur ou en mode autonome. En particulier, l'implémentation des endpoints sous forme d'EJB n'est possible qu'avec GlassFish. On notera quand même que JAX-WS 2.1.2 propose un support JMX). Dodo, à priori.

Plus d'info:
• Announcing Metro - Naming the Web Services stack in GlassFish
• The GlassFish web services stack is now called Metro
• Introducing Metro
• Introducing Metro, the GlassFish WebServices Stack

Sites de référence :
• http://metro.dev.java.net/
• http://jersey.dev.java.net/
• http://glassfish.java.net/

Prochaine étape: JAX-RS?

( juin 20 2007, 07:54:59 AM CEST ) Permalink Comments [1]


Join us at CommunityOne
ALT DESCR
Tags
Links