Le Web Entretient La Vue d'ensemble De Technologie

Il y a un certain nombre de manières de décrire des services de Web, mais afin d'employer une définition standard nous employons la définition de W3C d'un service de Web :

Un service de Web est un système logiciel conçu pour soutenir l'interaction interoperable de machine-à-machine au-dessus d'un réseau. Il a une interface décrite dans un format exploitable par machine (spécifiquement WSDL, discuté plus tard). D'autres systèmes agissent l'un sur l'autre avec le service de Web en quelque sorte prescrit par sa description en utilisant des messages de SAVON, typiquement donnés en utilisant le HTTP avec une fabrication en série de XML en même temps que d'autres normes de Web-related.
Dans un Web typique entretient le scénario, une application d'affaires qui pourrait être un message de SAVON d'utilisations de service de Web, habituellement au-dessus du protocole de transport de HTTP, pour envoyer une demande à un autre service à un URL. Le service reçoit la demande, processus il, et renvoie une réponse. Dans un scénario de chaîne d'approvisionnements, les services de Web et leurs consommateurs sont typiquement des entreprises, faisant le Web entretient principalement des transactions des affaire-à-affaires (B2B). Une entreprise peut être le fournisseur de service de Web et également le consommateur d'autres services de Web. Par exemple, un distributeur en gros des épices est dans le rôle du consommateur quand il emploie un service de Web pour vérifier la disponibilité des haricots de vanille et dans le rôle de fournisseur quand il fournit les clients éventuels des prix des haricots de vanille.

Problème

Intégrant les affaires des applications diverses dans une architecture cohésive, fiable, et bloquée sont un défi commun que la plupart des entreprises doivent adresser quotidiennement. Dans l'exemple précédent, un distributeur en gros peut être un système de Java EE, alors qu'un fabricant de produit est un NET ou un système de legs.

L'interaction d'application-à-application représente un Remote Procedure Call traditionnel (RPC), où deux systèmes sont intégrés en utilisant un mécanisme synchrone de communication. Un client reçoit l'information sur la commande passée basée sur les résultats reçus du fabricant de produit. La sélection de la bonne technologie et la détermination du modèle de communication (synchrone contre asynchrone) sont des facteurs importants de succès.

Solution

Les services de Web sont devenus une norme de fait pour réaliser efficacement l'interopérabilité à travers les ensembles divers d'applications d'entreprise et pour offrir un choix préféré de technologie pour l'intégration. Voici la raison pour laquelle : L'interopérabilité, simplicité, XML-a basé le format lisible humain, et la communication d'utilisation facile d'inter-application de ligne profilée d'aide. Par conséquent, des services de Web sont largement répandus pour les deux B2B aussi bien que l'intégration de corporation d'inter-application. Conceptuellement le modèle de service de Web implique les éléments suivants :

  • Les agents l'agent est l'entité concrète (un morceau de logiciel) qui envoie et reçoit des messages.

  • Entretient le service de A est une certaine opération bien définie ou fonctionnalité abstraite qui est réseau-accessible par d'autres systèmes en utilisant sa description de service.

  • Le fournisseur le fournisseur est le propriétaire d'un service et pourrait être des affaires ou un individu.

  • Le demandeur l'entité de demandeur est des affaires ou un individu qui découvrent ou appellent le service du Web de l'entité de fournisseur.

  • Service la description que la description de service est l'interface pour un service de Web et décrit les mécanismes de l'échange de message. La description inclut les formats de message, les types de données, l'endroit de réseau (c'est-à-dire, le URL), les protocoles de transport, et les formats de fabrication en série de transport qui devraient être employés entre l'agent de demandeur et l'agent de fournisseur.
Les services de Web souvent permettaient l'architecture orientée par service (SOA), avec le but primaire de l'architecture de services de Web (WSA) devant favoriser l'interopérabilité. Les services de Web fournissent des moyens d'interopérabilité à travers les systèmes, les plateformes, les applications, et les langages de programmation hétérogènes. En tant qu'élément du ce, les services de Web présentent un mécanisme utile pour l'intégration des applications de Java EE avec ceux établies sur le cadre de NET de Microsoft. En utilisant des services de Web pour l'interopérabilité entre le NET de Java EE et de Microsoft, vous pouvez gagner beaucoup de flexibilité architecturale. Puisqu'ils XML-sont basés, le grainedyou lâchement couplé et et brut peut concevoir un SOA adaptable flexible. Cependant, les services de Web ne sont pas l'"extrémité que tous soient toutes les" approches d'intégration d'application, et il y a des limitations en les employant ce besoin d'être maintenu dans l'esprit.

Technologies De Service De Web

Des services de Web sont remplis de combustible par XML, qui, étant une langue de marge bénéficiaire bénéficiaire, permet la neutralité de la plateforme, de la langue, et du fournisseur. XML est également la clef à la nature lâchement couplée des services de Web. Un service de Web est une entité abstraite définie par une interface XML-basée, le Web entretient le langage de description (WSDL), et communiqué en utilisant un protocole XML-basé (SAVON) ou le transfert Représentatif d'état (REPOS). C'est l'essence de la nature d'abrégé sur propositionthe de valeur de services de Web de la définition de service de Web, découverte, et la communication, l'exécution fondamentale, que ce soit le NET, le Java EE, ou l'autre chose est complètement soustraite loin du consommateur. De même, il y a une flexibilité d'envoyer des messages de SAVON des protocoles au-dessus de HTTP/S, de ftp, ou de smtp de transport.

Le SAVON est la technologie utilisée pour communiquer avec des services de Web. Tandis que des services très simples de transfert de l'information peuvent être mis en application sans SAVON, il est beaucoup plus facile construire des applications bloquées, fiables, à parties multiples, multi-partis et/ou de multi-réseau s'il y a une manière standard d'empaqueter l'information de transmission de messages d'une manière de neutre de protocole. Ceci permet également à l'infrastructure de transmission de messages (qui peut être matériel, intermédiaires de SAVON, ou bibliothèques spécialisés de code appelées par le destinataire final d'un message de SAVON) de fournir l'authentification, le chiffrage, le traitement de contrôle d'accès et transactionnel, la conduite, et les services de confirmation de la livraison. La structure d'enveloppe de SAVON (et attachement) et les modèles de header/processing se sont avérés être un cadre très robuste et puissant dans lequel pour faire ceci.

L'interopérabilité à travers les systèmes hétérogènes exige d'un mécanisme de permettre les types précis de structure et de données des messages à comprendre généralement par des producteurs et des consommateurs de services de Web. WSDL fournit une description précise et est la base de la façon dont des messages de SAVON de services de Web peuvent être produits pour l'échange entre le consommateur et le service. En plus de décrire l'interface d'application de services de Web, WSDL permet également comment un service de Web est décrit dans un enregistrement d'affaires et d'où il peut découvrir. Un enregistrement d'affaires est légèrement comme un annuaire de téléphone électronique, car il contient des listes des services et comment vous pouvez leur parler. Typiquement ces enregistrements sont basés sur la description, la découverte et l'intégration universelles (UDDI), une autre XML-variante. En conclusion, l'information que l'échange de services de Web peut être composé selon un schéma bien connu du public XML. Selon le contenu, il y a beaucoup de schémas disponibles comme des affaires extensibles rapportant le langage de définition de données de la langue (XBRL) et du marché (MDDL).

Agir de WSDL, de SAVON, et d'UDDI comme les plus bas dénominateurs communs pour des services créants et consumants de Web, tandis que le service mettant en application des détails sont différent dans Java et NET. Les bonnes nouvelles sont celle indépendamment de son ensemble de compétence, chacune des plateformes fournit des moyens de développer et déployer des services interoperable.

Services De Web De Java

Du côté de Java, plusieurs technologies de Java travaillent ensemble pour fournir l'appui pour des services de Web. Ces technologies peuvent être consultées par l'intermédiaire de la trousse à outils du paquet de réalisateur de services de Web de Java (JWSDP) ou des outils de développement correspondants qui pourraient être utilisés pour construire des services de Web.

Comme point de départ, le Java api pour RPC XML-Basé (JAX-RPC) fournit l'appui pour des services de Web à l'aide du SAVON au-dessus du HTTP. JAX-RPC définit tracer entre les classes de Java et le XML comme utilisé dans le RPC de SAVON appelle. Des exemples multiples sont mis en application avec JAX-RPC, démontrant un ensemble divers de scénarios dans lesquels le réalisateur peut utiliser cette technologie. Avec JAX-RPC et un WSDL, un de bidon interoperate facilement avec des clients et services fonctionnant sur les plateformes Java-basées ou non-Java-basées telles que le NET de Microsoft.

Du côté de client, il y a des moignons correspondant aux services de Web, alors que sur le Web de côté de serveur les services sont compilés dans les cravates correspondantes. Le message et le protocole fondamentaux de transport devraient être identique pour assurer l'interopérabilité entre un client et un serveur. Il y a trois modes en lesquels un client de JAX-RPC peut agir l'un sur l'autre avec le serveur. Le premier est une demander-réponse synchrone traditionnelle ; le second est un RPC à sens unique qui permet à un client de ne pas bloquer ou ne pas attendre une réponse ; et le troisième est un RPC non groupant où un client peut continuer l'exécution dans le mêmes fil et bloc postérieur pour la réception ou le scrutin pour la réponse.


  Share  
|


Hormis JAX-RPC, les services de Web de Java incluent le SAVON avec les attachements api pour Java (SAAJ). Cet api est employé pour passer des documents d'affaires (dans le format binaire) en les attachant au message de SAVON. Pour assurer l'interopérabilité des attachements binaires de données dans le document de SAVON, services de Web de Java (par l'intermédiaire de JAX-WS) et offre de NET le mécanisme d'optimisation de transmission de message de SAVON (MTOM)

La Note Du Réalisateur

Depuis le dégagement de JAX-RPC 1.0, de nouvelles caractéristiques et nouvelles versions des normes qu'il met en application ont été libérées. JAX-WS 2.0 est le successeur à JAX-RPC et se relie selon les mêmes caractéristiques et normes, mais s'ajouter de manière significative à lui. Il inclut ce qui suit :

  • JAXB

  • SAVON 1.2

  • WSDL 2.0

  • Profil De base 1.1 de WS-I

  • Annotation de méta-données pour Java (JSR 175)

  • Le Web entretient Metadata pour Java (JSR 181)

  • Services De Web D'Entreprise (JSR 109)

  • Le Web Entretient La Sécurité (JSR 183)
En plus, il prolonge et améliore le soutien de document-based/message-based SOAs autour :

  • Asynchrony

  • Transports Non-HTTP

  • Accès de message

  • Gestion de session
En tant qu'élément du SOA, des services sont souvent édités dans l'enregistrement d'UDDI. Le Java api pour des enregistrements de XML permet d'accéder client à l'enregistrement de XML. Le Java api pour des enregistrements de XML permet l'accès aux affaires et les enregistrements d'usage universel au-dessus du Web. JAXR soutient les normes de l'ebXML Registry/Repository et les caractéristiques d'UDDI.

Le paquet de réalisateur de service de Web de Java inclut également APIs pour lier des schémas de XML aux classes de Java, si par l'architecture de Java pour l'attache de XML (JAXB). Le compilateur obligatoire de JAXB peut être employé pour produire automatiquement des objets de domaine de Java.

L'analyse et la transformation de document sont souvent des opérations nécessaires pour des services de Web. Pour celui vous pouvez employer le Java api pour XML traitant (JAXP) ce traitement de soutiens des documents de XML. JAXP peut être employé avec le modèle d'objet de document (DOM), l'api simple pour XML analysant (SAX), et transformation de langue de feuille de modèle de XML (XSLT).

Le Web De Java Entretient Le Sommaire d'Api
JAX-RPC Le Web entretient l'exécution et l'invocation
JAX-WS Java api pour des services de Web de XML
JAXR Service l'enregistrement et la consultation
JAXB Schéma de XML liant dans l'arbre d'objet de Java
JAXP Analyse et transformation de XML
SAAJ Attachement de document


Peut-être le dispositif le plus important du Java EE APIs pour des services de Web et XML qu'elles toutes soutiennent des normes d'industrie, assure de ce fait l'interopérabilité. Les divers groupes de normes d'interopérabilité de réseau, tels que le consortium mondial de Web (W3C) et l'organisation pour l'avancement des normes structurées de l'information (OASIS), avaient défini des normes de services de Web pour permettre à des applications disparates d'intégrer seamlessly avec l'un l'autre.

Services de Web dans le cadre de NET de Microsoft

Le NET de Microsoft fournit deux mécanismes pour des services de Web de bâtiment. La première et plus largement répandue approche pour mettre en application des services de Web est d'employer le namespace du NET System.Web.Webservices de Microsoft dans le cadre de NET. Une application de serveur pourrait avoir ses méthodes définies comme méthodes de Web en utilisant [ l'attribut de WebMethod ]. Cette approche sera employée pour établir un service de Web de NET de Microsoft pour illustrer l'interopérabilité avec un client de Java EE, avec une explication d'importance de divers attributs et directives dans le cadre de WebMethods.

Une autre technique doit écrire à une classe de traiteur de HTTP de coutume cette des prises dans la canalisation de HTTP de NET de Microsoft en mettant en application l'interface d'IHTTPHandler. Les traiteurs de HTTP sont des objets que le processus demande pour URLs individuel ou URLs avec certains prolongements de dossier (tels que l'asmx ou l'aspx). Les traiteurs faits sur commande de bâtiment a besoin de l'utilisation de System.Web APIs de traiter le message entrant de HTTP avec le System.Xml APIs pour traiter l'enveloppe de SAVON trouvée dans le corps de HTTP. L'inscription d'un traiteur fait sur commande rend nécessaire également écrire manuellement le document de WSDL qui décrit exactement l'exécution de service de Web. Elle exige également un arrangement plein des caractéristiques de XML, de XSD, de SAVON, et de WSDL. Microsoft ASP.NET se transporte avec une classe spéciale d'IHttpHandler pour des points finaux d'asmx (appelés WebServiceHandler), qui fournit la fonctionnalité de base de XML, de XSD, de SAVON, et de WSDL dont les réalisateurs ont besoin pour établir des services de Web.

La dernière méthodologie tient compte de plus grand flexibilityparticularly quand il y a le besoin pré ou post-traite le contenu du message de SAVON.

Du côté de client, des procurations sont employées pour communiquer avec un service de Web. Ces procurations sont automatiquement produites par l'outil de wsdl.exe qui est fourni dans le cadre de NET ou par Studio.NET visuel. Ces procurations, une fois incluses dans un projet et liées dedans en compilant le code, contrôlez la communication avec les méthodes de Web qui sont exposées par le service. Elles sont produites en analysant le dossier de WSDL qui décrit le service de Web.

XML traitant, qui est central aux services de Web, est en soi une partie du cadre de NET. Pour des messages de SAVON étant passés dans et hors d'un service de Web, le traitement de XML est implicite, étant exécuté par le temps d'exécution au nom du réalisateur. Ainsi si une méthode de Web est exposée (qui s'attend à ce qu'une corde soit passée dans lui) tandis que la communication fondamentale du client à la méthode de Web est un message de SAVON, le code reçoit simplement la corde passée dedans comme si c'étaient un appel local de méthode.

Le bidon de XML, naturellement, soit utilisé directement, en utilisant les classes dans le namespace de System.Xml pour créer, charger, analyser, et éditer des documents de XML, y compris des exemples de SAVON.

Le cadre de NET n'inclut pas la fonctionnalité d'UDDI par défaut. Si vous voulez éditer ou agir l'un sur l'autre autrement avec des serveurs d'UDDI, le kit de développement de logiciel de la plateforme UDDI (SDK) est nécessaire. Ce SDK met en application un net Qui peut être utilisé dans les applications, fournissant le namespace de Microsoft.Uddi.

Suivret un exemple de l'UDDI SDK dans l'action où l'annuaire est enquis pour un service particulier, et alors les services qui assortissent l'enquête sont réitérés :

MyConn d'UddiConnection = nouvel 
UddiConnection("http://test.uddi.myserver.com/inquire") ; 
GetServiceDetail gs = nouveau GetServiceDetail(strKey) ; 
ServDetail de ServiceDetail = gs.Send(myConn) ; foreach 
(bs de BusinessService dans servDetail.BusinessServices) {...}
Pour manipuler des attachements tels que l'encapsulation directe de message d'Internet (DIXIÈME DE DOLLAR) ou le mécanisme d'optimisation de transmission de message (MTOM), Microsoft a une suite des bibliothèques comme une adjonction au cadre de NET a appelé les paquets de perfectionnement de services de Web. Ce sont des mises à jour au cadre de NET qui mettent en application les derniers W - * les dégagements intermédiaires à grande échelle de normes du cadre. Pour un guide complet sur toutes les choses à faire avec des services de Web dans Microsoft et le monde de NET, le portail de réalisateur de services de Web de MSDN est une excellente ressource.

La philosophie de Microsoft pour le logiciel est tout d'abord concentrée sur le logiciel de bâtiment en tant que composants service-orientés atomiques. C'est à cet effet que la prochaine génération du développement APIs de logiciel de Microsoft inclut une nouvelle base de communication de Windows, un api simple pour le logiciel-comme-un-service de bâtiment, qui s'ajoute dessus à la version 2.0 du cadre de NET. Cet api, une partie d'une famille de base APIs (base de déroulement des opérations de Windows, base de présentation de Windows, et ainsi de suite), sera le noyau api pour les systèmes service-orientés reliés par bâtiment.
c'est un article supplémentaire par Blerick Tawman


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions