Accueil Finances personnelles Création de services Web dans WebLogic - dummies

Création de services Web dans WebLogic - dummies

Table des matières:

Vidéo: Oracle WebLogic 10.3 JAX-WS WebService Creation Guide. 2025

Vidéo: Oracle WebLogic 10.3 JAX-WS WebService Creation Guide. 2025
Anonim

Un service Web est une procédure distante accessible aux clients via TCP / IP, en utilisant généralement HTTP ou SMTP comme moyen de transport et XML pour l'encodage. Le service Web est décrit à l'aide de la notation XML standard appelée description de service. Un service Web remplit une seule tâche ou un ensemble de tâches. Tous les détails du service Web sont masqués pour l'utilisateur et le service est indépendant du matériel et du logiciel. Cela encourage les développeurs de logiciels à créer des applications composées de petits services individuels, qui peuvent ensuite être utilisés seuls ou en groupe pour exécuter des tâches encore plus complexes.

Vous pouvez créer un service Web de deux manières: manuellement, via la création de fichiers source et de configuration Java, ou en utilisant un système d'interface graphique appelé WebLogic Workshop. Dans cet article, vous créez un service Web manuellement.

Définition d'un service Web

Avant de créer votre service Web, vous devez définir ce qu'il va faire. Cela vous permet de construire correctement l'interface à laquelle les autres applications doivent adhérer si elles veulent communiquer avec votre service Web.

Service synchrone

Service asynchrone

  • A
  • service Web synchrone, < qui est la valeur par défaut, commence lorsque le service Web reçoit un message. Ce service Web répond immédiatement.

Les services Web synchrones sont plus utiles lorsque le programme client requiert immédiatement les données renvoyées par la requête. Un exemple de ce type de données est la cotation boursière actuelle pour une entreprise en particulier.

Un service Web

asynchrone

est asynchrone, de sorte que les messages peuvent être échangés librement entre le client et le service Web. Un message d'un côté n'oblige pas l'autre à envoyer un message correspondant. Lorsqu'un client envoie un message à un service Web asynchrone, le client n'attend pas un message du service Web. Le service Web peut renvoyer un message au client ultérieurement, mais rien ne lie intrinsèquement ce message au message d'origine envoyé par le client.

Les services Web asynchrones sont un bon choix lorsque vous envoyez des informations qui ne nécessitent pas de réponse. Par exemple, vous pouvez envoyer un message à plusieurs de vos serveurs, en leur donnant un nouveau message d'accueil à afficher aux utilisateurs. Choix et construction d'un composant backend Le but de votre service Web est de permettre aux clients distants d'accéder aux services que vous fournissez. Ces services, appelés le composant backend

prennent la forme d'un code Java.Vous pouvez créer votre composant backend comme l'un des suivants:

Une méthode d'une session sans état EJB Une méthode d'une classe Java Une méthode JMS consumer

  • WebLogic peut rendre n'importe lequel de ces éléments disponible un service web. Cela permet de conditionner le code Java existant en tant que service Web. Si vous avez déjà créé des EJB de session sans état, vous pouvez les regrouper en tant que service Web. Ou si votre code existe dans les classes Java normales, vous pouvez fournir l'accès à votre classe en tant que service Web. Vous pouvez également utiliser la messagerie JMS en tant que service principal pour votre service Web.
  • Création d'un service Web synchrone
  • Dans cette section, vous allez créer un service Web synchrone à l'aide d'une classe Java standard, puis utiliser un EJB de session sans état. D'abord, vous devez écrire le composant backend. Ce sera une classe Java, un EJB sans état ou un consommateur de méthode JMS.

Utilisation d'un composant backend de classe Java

Vous devez respecter quelques règles lors de l'implémentation d'une opération de service Web à l'aide d'une classe Java:

Ne démarrez aucun thread. Cette règle s'applique à tout le code Java exécuté sur WebLogic Server.

Définir un constructeur par défaut sans argument.

Définissez comme publiques les méthodes de la classe Java qui seront exposées en tant qu'opérations de service Web.

  • Vous devez écrire du code Java thread-safe car WebLogic Server ne gère qu'une seule instance d'une classe Java qui implémente une opération de service Web et chaque appel du service Web utilise cette même instance.
  • Pour un exemple d'implémentation d'une opération de service Web WebLogic avec une classe Java, accédez au répertoire suivant:
  • WL_HOMEsamplesserversrcexampleswebservicesbasicjavaclass

WL_HOME

fait référence au répertoire principal de votre installation de WebLogic Server. Sur un système Windows, ce répertoire est généralement C: beaweblogic81.

Le Listing 1 montre une classe Java que vous pouvez utiliser comme composant backend. Cette classe Java contient une méthode unique, appelée sampleMethod, qui accepte un entier et renvoie une chaîne. Listing 1: Composant Java Class Backend package com. nuls. ejb;

public class SampleBackendComponent

{

public Chaîne sampleMethod (int num)

{

switch (num)

{

case 1: renvoie "One";

cas 2: renvoie "Deux";

cas 3: retour "Trois";

case 4: renvoie "Four";

cas 5: retour "Cinq";

case 6: renvoie "Six";

case 7: renvoie "Seven";

case 8: retour "Huit";

case 9: renvoie "Neuf";

case 10: renvoie "Ten";

par défaut: retourne "Some Number";

}

}

}

Utilisation d'une session sans état Composant dorsal EJB

Vous pouvez également choisir de créer votre composant backend en tant qu'EJB de session sans état. Écrire du code Java pour une session sans état EJB pour un service Web n'est pas différent de l'écriture d'un EJB autonome.

Dans les services Web. Descripteur de déploiement xml, vous pouvez spécifier qu'une opération de service Web est à sens unique, ce qui signifie que l'application cliente qui appelle le service Web n'attend pas de réponse.Lorsque vous écrivez le code Java pour la méthode EJB qui implémente ce type d'opération, vous devez spécifier qu'il renvoie void.

Lorsque vous choisissez entre l'utilisation d'un composant EJB ou d'un composant backend de classe Java, tenez compte des autres manières dont votre composant backend sera utilisé. Si votre composant backend est généralement accessible en tant qu'EJB, créez-le en tant que EJB. Cela vous permet d'utiliser le même code pour votre EJB et votre service Web.

Des ressources beaucoup plus importantes sont nécessaires pour appeler un service Web que d'appeler un EJB. Pour cette raison, il est courant de créer tous vos composants backend en tant que EJB, puis d'autoriser les applications externes à accéder à vos composants backend en tant que services Web. Vos propres applications locales, qui s'exécutent sur le même réseau que votre serveur WebLogic, peuvent utiliser la méthode d'appel EJB plus rapide.

Le Listing 2 montre le fichier du bean qui implémente le composant backend EJB. Le composant backend EJB est presque le même que le composant backend de classe Java. La principale différence est le code supplémentaire utilisé pour soutenir l'EJB.

Listing 2: Composant EJB Backend

package com. nuls. ejb;

importer javax. ejb. *;

importer java. rmi. *;

importer javax. balançoire. *;

classe publique SampleBean implémente SessionBean

{

private SessionContext stx;

// Méthodes obligatoires, non utilisées par ce type de bean

public void ejbCreate () {}

public void ejbRemove () {}

public void ejbActivate () {}

public void ejbPassivate () {}

// setter pour le domaine public SessionContext

void setSessionContext (SessionContext ctx)

{

ctx = this. stx;

}

// l'exemple de méthode

public Chaîne sampleMethod (int num)

renvoie RemoteException

{

switch (num)

{

case 1: return " Un";

cas 2: renvoie "Deux";

cas 3: retour "Trois";

case 4: renvoie "Four";

cas 5: retour "Cinq";

case 6: renvoie "Six";

case 7: renvoie "Seven";

case 8: retour "Huit";

case 9: renvoie "Neuf";

case 10: renvoie "Ten";

par défaut: retourne "Some Number";

}

}

}

Vous devez spécifier que le bean est un EJB sans état dans l'ejb-jar. fichier XML, qui est montré dans l'extrait 3. Vous pouvez utiliser plusieurs noeuds et attributs.

Listing 3: ejb-jar. Fichier XML pour un composant backend

' // java. Soleil. com / dtd / ejb-jar_2_0. dtd '>

SampleObject

com. nuls. ejb. SampleHome

com. nuls. ejb. Échantillon

com. nuls. ejb. SampleBean

Stateless

Conteneur

Création de services Web dans WebLogic - dummies

Le choix des éditeurs

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Windows, avec un W majuscule, tire son nom de sa caractéristique principale: Windows, avec un w minuscule. Se familiariser avec Windows signifie apprendre à ouvrir, fermer, redimensionner, déplacer et basculer entre les fenêtres, ce qui est la clé pour jongler avec succès avec plusieurs activités. Chaque programme que vous exécutez occupe sa propre fenêtre. Une fenêtre peut occuper une partie de ...

Comment accepter ou rejeter les cookies dans Safari - dummies

Comment accepter ou rejeter les cookies dans Safari - dummies

Un cookie est un petit fichier qu'un site Web enregistre automatiquement sur le disque dur de votre Mac. Il contient des informations, telles que vos préférences ou votre date de naissance, que le site utilisera lors de vos prochaines visites. Dans Mac OS X Snow Leopard, Safari vous permet de choisir d'accepter ou non tous les cookies ...

Le choix des éditeurs

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Pour créer une boîte ou une ligne dans QuarkXPress plus complexe qu'un simple rectangle, ovale ou starburst, vous entrez dans le domaine du chemin de Bézier. Si vous avez utilisé l'outil Plume dans Adobe Illustrator ou Photoshop, vous comprenez déjà les chemins de Bézier. Il faut un peu de pratique et un esprit détendu ...

Création d'un rapport avec Crystal Reports 10 - témoins

Création d'un rapport avec Crystal Reports 10 - témoins

Lorsque vous démarrez Crystal Reports 10, généralement l'une des trois choses suivantes: créer un rapport, modifier un rapport ou exécuter un rapport sur les données de votre base de données. Les rapports prennent des données à partir d'une base de données, les traitent, les formatent et les affichent ensuite sur une imprimante, un écran d'ordinateur ou un site Web. Crystal Reports ...

Traitant des commentaires Javadoc dans Eclipse - mannequins

Traitant des commentaires Javadoc dans Eclipse - mannequins

Lorsque vous utilisez Eclipse pour écrire du code Java, n'oubliez pas de éditez les commentaires de Javadoc (les choses qui commencent par / **). Vous pouvez ajouter des informations utiles lorsque vous modifiez les commentaires Javadoc et lorsque vous les modifiez, l'aide au code d'Eclipse propose des suggestions. N'oubliez pas ces astuces lorsque vous modifiez vos commentaires Javadoc: Ajouter un commentaire Javadoc: ...

Le choix des éditeurs

Les connexions cachées sur le Nikon D5600 - les nuls

Les connexions cachées sur le Nikon D5600 - les nuls

Ouvrent les couvercles sur les côtés gauche et droit du Nikon D5600 caméra, et vous verrez plusieurs ports de connexions cachées. Les ports de connexion suivants sont indiqués sur cette image: Terminal d'accessoires: ce terminal accepte les accessoires suivants: câble déclencheur à distance Nikon MC-DC2; Télécommandes sans fil WR-1 et WR-R10; et les unités GPS GP-1 / GP-1A. I ...

Les connexions cachées sur votre Nikon D5200 - les nuls

Les connexions cachées sur votre Nikon D5200 - les nuls

ÉParpillés sur l'extérieur de votre appareil photo sont nombreuses commandes que vous utilisez pour changer d'image -prend des paramètres, revoir et modifier vos photos, et effectuer diverses autres opérations. Caché sous le couvercle sur le côté gauche de la caméra, vous trouverez les quatre ports de connexion suivants, étiquetés dans cette figure: Borne accessoire: Vous pouvez brancher le Nikon en option ...

Des boutons et autres commandes du Nikon D7500 - mannequins

Des boutons et autres commandes du Nikon D7500 - mannequins

C'est génial d'avoir une carte pour le boutons et commandes sur votre appareil photo, mais ce n'est pas beaucoup d'aide si vous ne pouvez pas vous rappeler quel bouton appuyer sur quand (et pourquoi). Alors, voici un aperçu des fonctions des contrôles les plus importants. (Certains contrôles ont des fonctions supplémentaires pendant certaines opérations, mais la table ...