Huis Persoonlijke financiën Web Services maken in WebLogic - dummies

Web Services maken in WebLogic - dummies

Inhoudsopgave:

Video: *NEW* Install & Configure Web Server (Server 2012 R2) 2024

Video: *NEW* Install & Configure Web Server (Server 2012 R2) 2024
Anonim

Een webservice is een externe procedure die beschikbaar is voor clients via TCP / IP, meestal met gebruik van HTTP of SMTP als transport en XML voor codering. De webservice wordt beschreven met behulp van de standaard XML-notatie met de naam . Een webservice vervult een enkele taak of een reeks taken.

Alle details van de webservice zijn voor de gebruiker verborgen en de service is onafhankelijk van hardware en software. Dit moedigt softwareontwikkelaars aan applicaties te bouwen die bestaan ​​uit kleine, individuele services, die vervolgens alleen of in groepen kunnen worden gebruikt om nog complexere taken uit te voeren.

U kunt een webservice op twee manieren maken: handmatig, door het maken van Java-bron- en configuratiebestanden of door een GUI-systeem genaamd WebLogic Workshop te gebruiken. In dit artikel maakt u een webservice handmatig.

Een webservice definiëren

Voordat u uw webservice maakt, moet u definiëren wat deze doet. Hiermee kunt u de interface waarop andere toepassingen zich moeten houden, correct construeren als ze met uw webservice willen communiceren.

De meest elementaire ontwerpbeslissing is welke van de twee algemene typen webservices u zult maken:

  • Synchrone service
  • Asynchrone service

A synchrone webservice, < dat standaard is, begint wanneer de webservice een bericht ontvangt. Deze webservice reageert onmiddellijk. Synchrone webservices zijn het handigst wanneer het clientprogramma de gegevens vereist die direct uit het verzoek worden geretourneerd. Een voorbeeld van dit type gegevens is de actuele aandelenkoers van een bepaald bedrijf.

Een

asynchrone webservice is asynchroon, dus berichten kunnen vrij worden uitgewisseld tussen de client en de webservice. Een bericht van één kant verplicht de ander niet om een ​​overeenkomstig bericht te verzenden. Wanneer een client een bericht naar een asynchrone webservice verzendt, wacht de client niet op een bericht van de webservice. De webservice kan op een later tijdstip een bericht terugsturen naar de client, maar niets bindt dit bericht aan het oorspronkelijke bericht dat de client heeft verzonden. Asynchrone webservices zijn een goede keuze wanneer u informatie verzendt waarvoor geen reactie vereist is. U wilt bijvoorbeeld een bericht naar verschillende van uw servers verzenden, zodat ze een nieuw begroetingsbericht kunnen ontvangen dat aan gebruikers kan worden getoond.

Een back-endcomponent kiezen en bouwen

Het doel van uw webservice is om externe clients toegang te verlenen tot de services die u aanbiedt. Deze services, de

backend-component genoemd, hebben de vorm van Java-code.U kunt uw back-endcomponent bouwen als een van de volgende: Een methode van een stateloze sessie EJB

  • Een methode van een Java-klasse
  • Een JMS-methode consument
  • WebLogic kan elk van deze items beschikbaar maken als een webservice. Dit maakt het gemakkelijk om bestaande Java-code te verpakken als een webservice. Als u EJB's met stateless-sessies al hebt gemaakt, kunt u deze als een webservice verpakken. Of als uw code bestaat in normale Java-klassen, kunt u als een webservice toegang tot uw klasse verlenen. U kunt JMS-berichten ook gebruiken als backendservice voor uw webservice.

Een synchrone webservice bouwen

In dit gedeelte bouwt u een synchrone webservice op basis van een gewone Java-klasse en vervolgens met een stateloze EJB-sessie. Eerst moet u de back-endcomponent schrijven. Dit zal een Java-klasse zijn, een staatloze EJB, of een JMS-methode-consument.

Werken met een Java-back-endcomponent

U moet enkele regels volgen bij het implementeren van een webservice-bewerking met een Java-klasse:

Start geen threads. Deze regel is van toepassing op alle Java-code die op WebLogic Server wordt uitgevoerd.

  • Definieer een standaard constructor zonder argument.
  • Definieer als openbaar de methoden van de Java-klasse die zullen worden weergegeven als webservice-bewerkingen.
  • U moet threadveilige Java-code schrijven omdat WebLogic Server slechts één exemplaar van een Java-klasse onderhoudt die een webservicewerking implementeert, en elke aanroep van de webservice gebruikt dezelfde instantie.

Ga voor een voorbeeld van het implementeren van een WebLogic-webservicewerking met een Java-klasse naar de volgende map:

WL_HOMEsamplesserversrcexampleswebservicesbasicjavaclass

waarbij

WL_HOME verwijst naar de hoofddirectory van uw WebLogic Server-installatie. Op een Windows-systeem is deze map meestal C: beaweblogic81. Listing 1 toont een Java-klasse die u zou kunnen gebruiken als back-endcomponent. Deze Java-klasse bevat een enkele methode, genaamd sampleMethod, die een int accepteert en een string retourneert.

Listing 1: Java Class Backend Component

pakket com. dummies. ejb;

public class SampleBackendComponent

{

public String sampleMethod (int num)

{

switch (num)

{

case 1: return "One";

case 2: return "Two";

case 3: return "Three";

case 4: return "Four";

case 5: return "Five";

case 6: return "Six";

case 7: return "Seven";

case 8: return "Eight";

case 9: return "Nine";

case 10: return "Ten";

standaard: return "Some Number";

}

}

}

Werken met een staatloze sessie EJB-backendcomponent

U kunt er ook voor kiezen om uw backend-component te bouwen als een EJB zonder staat van de sessie. Java-code schrijven voor een staatloze sessie EJB voor een webservice is niet anders dan een zelfstandige EJB schrijven.

In de webservices. xml Deployment descriptor, kunt u opgeven dat een webservice-bewerking één manier is, wat betekent dat de clienttoepassing die de webservice oproept niet op een antwoord wacht.Wanneer u de Java-code schrijft voor de EJB-methode die dit type bewerking implementeert, moet u opgeven dat deze ongeldig is.

Bij het kiezen tussen een EJB- of een Java-klasse-backend-component, overweeg dan de andere manieren waarop uw backend-component zal worden gebruikt. Als uw backend-component vaak als een EJB wordt gebruikt, moet u deze als een EJB bouwen. Hiermee kunt u dezelfde code gebruiken voor zowel uw EJB- als webservice.

Er zijn aanzienlijk meer bronnen nodig om een ​​webservice te bellen dan om een ​​EJB te bellen. Daarom is het gebruikelijk om al uw back-endcomponenten als EJB's te maken en vervolgens externe applicaties toegang te geven tot uw backend-componenten als webservices. Uw eigen lokale applicaties, die op hetzelfde netwerk draaien als uw WebLogic-server, kunnen de snellere EJB-aanroepmethode gebruiken.

Listing 2 toont het beanbestand dat de EJB-backendcomponent implementeert. De EJB-backendcomponent is bijna hetzelfde als de backendcomponent van de Java-klasse. Het grootste verschil is de aanvullende code die wordt gebruikt om de EJB te ondersteunen.

Listing 2: EJB Backend Component

pakket com. dummies. ejb;

javax importeren. ejb. *;

java importeren. KMI. *;

javax importeren. schommel. *;

public class SampleBean implementeert SessionBean

{

private SessionContext stx;

// Vereiste methoden, niet gebruikt door dit type bonen

openbare inhoud ejbCreate () {}

openbare inhoud ejbRemove () {}

openbare inhoud ejbActivate () {}

openbare inhoud ejbPassivate () {}

// setter voor de SessionContext

public void setSessionContext (SessionContext ctx)

{

ctx = this. STX;

}

// de voorbeeldmethode

public String sampleMethod (int num)

gooit RemoteException

{

switch (num)

{

case 1: return " Een";

case 2: return "Two";

case 3: return "Three";

case 4: return "Four";

case 5: return "Five";

case 6: return "Six";

case 7: return "Seven";

case 8: return "Eight";

case 9: return "Nine";

case 10: return "Ten";

standaard: return "Some Number";

}

}

}

U moet opgeven dat de bean een stateloze EJB is in de ejb-pot. xml-bestand, dat wordt getoond in listing 3. Je kunt veel nodes en attributen gebruiken.

Listing 3: ejb-jar. xml-bestand voor een backend-onderdeel

' // java. zon. com / DTD / EJB-jar_2_0. DTD '>

SampleObject

com. dummies. ejb. SampleHome

com. dummies. ejb. Sample

com. dummies. ejb. SampleBean

Stateless

Container

Web Services maken in WebLogic - dummies

Bewerkers keuze

Een Oracle-omgeving instellen - dummies

Een Oracle-omgeving instellen - dummies

Als u een typische PL / SQL-omgeving wilt instellen, hebt u de volgende componenten: Databaseserver: dit is een computer (of een reeks computers) die de Oracle-database uitvoert. Oracle werkt in veel populaire computeromgevingen. De meest gebruikte met Oracle zijn UNIX, Linux of een versie van Microsoft Windows. PL / SQL wordt meestal uitgevoerd ...

SQL-rijwaarden en -waarden - dummies

SQL-rijwaarden en -waarden - dummies

De waarden die worden bewaard in de cellen die de snijpunten van de SQL-database vormen De rijen en kolommen van de tabel zijn de grondstoffen waaruit u zinvolle relaties en trends kunt afleiden. Rijwaarden De meest zichtbare waarden in een database zijn tabelrijwaarden. Dit zijn de waarden die elke rij van een databasetabel ...

SQL eerste, tweede en derde normale vormen - dummies

SQL eerste, tweede en derde normale vormen - dummies

Er zijn drie bronnen van wijzigingsanomalieën in SQL Deze worden gedefinieerd als eerste, tweede en derde normale vormen (1NF, 2NF, 3NF). Deze normale vormen fungeren als remedies voor het wijzigen van anomalieën. Eerste normale vorm Om in de eerste normale vorm (1NF) te zijn, moet een tabel de volgende eigenschappen hebben: De tabel is tweedimensionaal met rijen en ...

Bewerkers keuze

Een kijkje nemen in het syndroom van Empty-Nest - dummies

Een kijkje nemen in het syndroom van Empty-Nest - dummies

Een veel voorkomende misvatting is dat wanneer de kinderen van een stel vertrekken thuis, zullen pappa en mama het syndroom van empty-nest ontwikkelen. Ja, ze hebben misschien een leeg nest, maar voor sommige paren bloeit hun liefdesleven in deze periode van hun leven. De slachtoffers van het syndroom zijn de paren waarvan de relatie uit elkaar valt als zij de enige ...

STD's: wat u moet weten over herpes - dummies

STD's: wat u moet weten over herpes - dummies

Herpes, veroorzaakt door het herpes simplex-virus (HSV) ), is een ongeneeslijke SOA. Herpes heeft eigenlijk twee vormen: herpes simplex-type 1 (HSV-1) en herpes simplex-type 2 (HSV-2). HSV-1 wordt meestal geassocieerd met koortsblaasjes en koortsblaren boven de taille. "Ongeveer 80 procent van de Amerikaanse volwassenen heeft orale herpes. Ongeveer 25 procent van ...

Tiener Geslacht: hoe te weten Hoe ver te gaan - dummies

Tiener Geslacht: hoe te weten Hoe ver te gaan - dummies

Een van de grootste vragen voor tieners is niet "Zou ik seks moeten hebben? "Maar" Hoe ver moet ik gaan? "Terwijl het eigen comfortniveau en dat van de partner de topprioriteit zou moeten zijn in deze beslissing, spelen andere factoren een rol, vooral als tieners dat amorfe concept van" het derde honk overwegen. "" Derde basis "...

Bewerkers keuze

Tien voorwaarden American Football Announcers Gebruik - dummies

Tien voorwaarden American Football Announcers Gebruik - dummies

Een van de moeilijkste en meest intimiderende onderdelen over het volgen van een Amerikaans voetbalwedstrijd is dat de presentatoren soms een vreemde taal lijken te spreken die alleen bekend is bij echte voetballiefhebbers. Maar als je een aantal belangrijke termen onthoudt, ben je ver voor op het spel. Hier zijn enkele voetbaltermen die je misschien hoort, ...

Het begin van een voetbalspel: The Kickoff - dummies

Het begin van een voetbalspel: The Kickoff - dummies

Voor Amerikaanse voetbalfans, de openingsaftrap is een opwindende start voor elke game. Ze zien de tweezijdige sensatie van het ene team dat probeert het andere te blokkeren en helpt de herhaler om door en voorbij 11 snelladers van het trapende team te rennen. (Wel, maak die tien spelers.De kicker staat meestal rond de 50-yard-lijn, ...

Uw voetbalcoachtoelen afstemmen op een leeftijdsgroep - dummies

Uw voetbalcoachtoelen afstemmen op een leeftijdsgroep - dummies

Elk kind in uw team is anders zoveel manieren. Sommigen zijn begaafde hardlopers, anderen kunnen duizelingwekkende vangsten maken en wat moeite om simpelweg de basistechnieken van het spel te vatten. Ongeacht de sterke en zwakke punten van de kinderen, die overal op de kaart staan, hebben jongeren algemene kenmerken die worden beïnvloed ...