Hjem Personlig finansiering Opprette webtjenester i WebLogic - dummies

Opprette webtjenester i WebLogic - dummies

Innholdsfortegnelse:

Video: webutvikling i Oslo [[ Nett2.me ]] PROFESJONELLE WEBTJENESTER - Trenger en Nettside? 2024

Video: webutvikling i Oslo [[ Nett2.me ]] PROFESJONELLE WEBTJENESTER - Trenger en Nettside? 2024
Anonim

En webtjeneste er en ekstern prosedyre tilgjengelig for klienter gjennom TCP / IP, vanligvis ved hjelp av HTTP eller SMTP som transport og XML for koding. Webtjenesten er beskrevet ved hjelp av standard XML-notat, kalt en tjenestebeskrivelse. En webtjeneste oppfyller en enkelt oppgave eller et sett med oppgaver.

Alle detaljer i webtjenesten er skjult fra brukeren, og tjenesten er både maskinvare og programvare uavhengig. Dette oppfordrer programvareutviklere til å bygge applikasjoner som består av små, individuelle tjenester, som deretter kan brukes alene eller i grupper for å utføre enda mer komplekse oppgaver.

Du kan opprette en webtjeneste på to måter: manuelt, gjennom opprettelsen av Java-kilde og konfigurasjonsfiler, eller ved hjelp av et GUI-system kalt WebLogic Workshop. I denne artikkelen oppretter du en webtjeneste manuelt.

Definere en webtjeneste

Før du lager webtjenesten, bør du definere hva den skal gjøre. Dette gir deg mulighet til å konstruere grensesnittet som andre applikasjoner må overholde, hvis de vil kommunisere med din webtjeneste.

Den mest grunnleggende designbeslutningen er hvilken av de to generelle typene webtjenester du vil opprette:

  • Synkron tjeneste
  • Asynkron tjeneste

A synkron webtjeneste, < som er standard, begynner når webtjenesten mottar en melding. Denne webtjenesten reagerer umiddelbart. Synkron webtjenester er mest nyttige når klientprogrammet krever at dataene returneres fra forespørselen umiddelbart. Et eksempel på denne typen data er gjeldende aksjekurs for et bestemt selskap.

En

asynkron webtjeneste er asynkron, slik at meldinger kan utveksles fritt mellom klienten og webtjenesten. En melding fra den ene siden forplikter ikke den andre til å sende en tilsvarende melding. Når en klient sender en melding til en asynkron webtjeneste, venter klienten ikke på en melding tilbake fra webtjenesten. Internett-tjenesten kan sende en melding tilbake til klienten på et senere tidspunkt, men ingenting binder iboende denne meldingen til den opprinnelige meldingen som klienten sendte. Asynkrone webtjenester er et godt valg når du sender informasjon som ikke krever et svar. For eksempel kan du sende en melding til flere av serverne dine, og gi dem en ny hilsenmelding som skal vises til brukerne.

Velge og bygge en backend-komponent

Formålet med din webtjeneste er å tillate eksterne klienter å få tilgang til tjenester du oppgir. Disse tjenestene, kalt komponenten

backend, , tar formen av Java-kode.Du kan bygge din backend-komponent som en av følgende: En metode for statsløs økt EJB

  • En metode for en Java-klasse
  • En JMS-metode forbruker
  • WebLogic kan gjøre noen av disse elementene tilgjengelige som en webtjeneste. Dette gjør det praktisk å pakke eksisterende Java-kode som en webtjeneste. Hvis du allerede har opprettet statsløse økt EJB, kan du pakke dem som en webtjeneste. Eller hvis koden din finnes i vanlige Java-klasser, kan du gi deg tilgang til klassen som en webtjeneste. Du kan også bruke JMS messaging som en backend-tjeneste for webtjenesten.

Opprette en synkron webtjeneste

I denne delen bygger du en synkron webtjeneste ved hjelp av en vanlig Java-klasse og deretter bruker en statsløs økt EJB. Først må du skrive backend-komponenten. Dette vil enten være en Java-klasse, en statsløs EJB, eller en JMS-metode forbruker.

Arbeide med en Java-klassekomponent

Du må følge noen regler når du implementerer en webtjenesteoperasjon ved hjelp av en Java-klasse:

Ikke start noen tråder. Denne regelen gjelder for all Java-kode som kjører på WebLogic Server.

  • Definer en standard ingen argumentkonstruktor.
  • Definer som offentlig metodene for Java-klassen som vil bli eksponert som webtjenesteoperasjoner.
  • Du må skrive trådbeskyttet Java-kode fordi WebLogic Server bare opprettholder en enkelt forekomst av en Java-klasse som implementerer en webtjenesteoperasjon, og hver påkalling av webtjenesten bruker samme eksempel.

For et eksempel på å implementere en WebLogic-webtjenesteoperasjon med en Java-klasse, gå til følgende katalog:

WL_HOMEsamplesserversrcexampleswebservicesbasicjavaclass

hvor

WL_HOME refererer til hovedkatalogen i WebLogic Server-installasjonen. På et Windows-system er denne katalogen vanligvis C: beaweblogic81. Liste 1 viser en Java-klasse som du kan bruke som en backend-komponent. Denne Java-klassen inneholder en enkelt metode, kalt sampleMethod, som aksepterer en int og returnerer en streng.

Oppføring 1: Java Class Backend Component

pakken com. dumminger. EJB;

offentlig klasse SampleBackendComponent

{

public String sampleMethod (int num)

{

bryter (num)

{

tilfelle 1: returner "One";

sak 2: tilbake "to";

sak 3: tilbake "tre";

sak 4: tilbake "fire";

sak 5: tilbake "fem";

sak 6: tilbake "seks";

sak 7: tilbake "syv";

sak 8: tilbake "åtte";

sak 9: retur "ni";

sak 10: tilbake "ti";

standard: returnere "noen nummer";

}

}

}

Arbeide med en statsløs økt EJB backend-komponent

Du kan også velge å bygge din backend-komponent som en statsløs økt EJB. Skrive Java-kode for en statsløs økt EJB for en webtjeneste er ikke annerledes enn å skrive en frittstående EJB.

I webtjenestene. xml distribusjonsbeskrivelse, kan du angi at en webtjenesteoperasjon er en måte, noe som betyr at klientprogrammet som påberoper webtjenesten ikke venter på svar.Når du skriver Java-koden for EJB-metoden som implementerer denne typen operasjon, må du angi at den returnerer tom.

Når du velger mellom å bruke en EJB- eller en Java-klassen-backend-komponent, bør du vurdere de andre måtene som backend-komponenten din skal brukes på. Hvis din backend-komponent blir vanlig tilgjengelig som en EJB, bygg den som en EJB. Dette lar deg bruke samme kode for både EJB og webtjenesten.

Det kreves mye ressurser for å ringe en webtjeneste enn å ringe en EJB. På grunn av dette er det vanlig å lage alle dine backend-komponenter som EJBer og deretter tillate eksterne applikasjoner å få tilgang til backend-komponentene dine som webtjenester. Dine egne lokale applikasjoner, som kjører på samme nettverk som din WebLogic-server, kan bruke den raskere EJB-anropsmetoden.

Liste 2 viser bønnefilen som implementerer EJB-bakdelen. EJB-backend-komponenten er nesten den samme som komponenten for Java-klassen. Hovedforskjellen er den ekstra koden som brukes til å støtte EJB.

Oppføring 2: EJB Backend Component

pakken com. dumminger. EJB;

importer javax. EJB. *;

importer java. RMI. *;

importer javax. svinge. *;

SampleBean implementerer SessionBean

{

privat SessionContext stx;

// Nødvendige metoder, ikke benyttet av denne typen bønne

offentlig tomgang ejbCreate () {}

offentlig tomgang ejbRemove () {}

offentlig tomgang ejbActivate () {}

offentlig tomrom ejbPassivate () {}

// setter for SessionContext

offentlig tomgang setSessionContext (SessionContext ctx)

{

ctx = dette. STX;

}

// Prøvemetoden

Offentlig StringprøveMetod (int num)

kaster RemoteException

{

bryter (num)

{

sak 1: retur " En";

sak 2: tilbake "to";

sak 3: tilbake "tre";

sak 4: tilbake "fire";

sak 5: tilbake "fem";

sak 6: tilbake "seks";

sak 7: tilbake "syv";

sak 8: tilbake "åtte";

sak 9: retur "ni";

sak 10: tilbake "ti";

standard: returnere "noen nummer";

}

}

}

Du må spesifisere at bønnen er en statsløs EJB i ejb-krukken. xml-fil, som vises i Liste 3. Du kan bruke mange noder og attributter.

Liste 3: ejb-jar. xml-fil for en backend-komponent

' // java. sol. com / DTD / EJB-jar_2_0. dtd '>

SampleObject

no. dumminger. EJB. SampleHome

com. dumminger. EJB. Prøve

com. dumminger. EJB. SampleBean

Tilstandsløs

Container

Opprette webtjenester i WebLogic - dummies

Redaktørens valg

Vanlige medikamenteffekter for legeassistenteksamen - dummies

Vanlige medikamenteffekter for legeassistenteksamen - dummies

Bli kjent med vanlige bivirkninger for legeassistenteksamen (PANCE). Den gjennomsnittlige personen over 60 år tar omtrent ni reseptbelagte medisiner og ser minst fire forskjellige helsepersonell. Potensialet for noen til å oppleve bivirkningene av disse medisinene er enorm, og det er potensialet for signifikante legemiddelinteraksjoner. ...

Epidemiologiske studier dekket av legeassistenteksamen - dummies

Epidemiologiske studier dekket av legeassistenteksamen - dummies

For legeassistenteksamen (PANCE) du bør være oppmerksom på forskjellene mellom typer epidemiologiske studier. Det første trinnet er å gjenkjenne om studiet er en retrospektiv studie eller en prospektiv studie: Retrospektiv: En retrospektiv studie betyr at du ser på fortiden for å finne ut hva som skjedde. For eksempel, en ...

Forhold som påvirker pleura dekket på legeassistenteksamen - dummies

Forhold som påvirker pleura dekket på legeassistenteksamen - dummies

Du kan se Spørsmål om legeassistenteksamen om forhold som påvirker pleura. Du må vurdere evaluering og behandling av pleural effusions, pneumothorax og pleurisy. Væske rundt lungene: Pleural effusjon Normalt er pleura et tomt rom; en pleural effusjon er ganske enkelt væske som opptar den plassen. Pleural ...

Redaktørens valg

Slik setter du automatiske varsler på LinkedIn - dummies

Slik setter du automatiske varsler på LinkedIn - dummies

Sikkert, du kan gjøre alt fotverket ved å gå til LinkedIn hjemmesiden og ser deg rundt for å se hvilke meldinger eller endringer som har skjedd. Den sanne kraften til å holde kontakten, har imidlertid LinkedIn, kontakter deg automatisk med den informasjonen du trenger for å holde deg informert. Klikk på Administrer-koblingen ved siden av Personvern og innstillinger ...

Tips for å administrere dine LinkedIn Post-interaksjoner - dummies

Tips for å administrere dine LinkedIn Post-interaksjoner - dummies

Når du klikker Publiser på LinkedIn, kan du tenke at jobb er ferdig, men det er bare begynt. Etter hvert som flere og flere leser innlegget ditt, kan de samhandle med innlegget og med deg som forfatter. Her er noen ting å huske på etter at du har publisert et innlegg: Overvåk statistikken. Når du ...

Forstå LinkedIn Pulse - dummies

Forstå LinkedIn Pulse - dummies

Har du sjekket ut LinkedIn Pulse ennå? Tenk deg om du leser en avis som bare viste deg artikler som har betydning for deg. (For det hele, for mange av dere, tenk på de dagene du kanskje har lest en avis.) Tilpassede nyheter er mulige, og på LinkedIn kalles det LinkedIn Pulse. Alt du trenger å gjøre for å ...

Redaktørens valg

Hva Dragon NaturallySpeaking kan gjøre for deg - dummies

Hva Dragon NaturallySpeaking kan gjøre for deg - dummies

Noe om å diktere til en datamaskin vekker alle slags urealistiske forventninger hos mennesker. Hvis du forventer at du skal servere deg frokost på sengen, har du lykke til. Denne artikkelen ble ikke skrevet ved å si "Computer, skriv en bok om NaturallySpeaking. "Forfatteren måtte diktere det ord for ord, akkurat som hun ville hatt ...

Når Start ikke starter i NaturallySpeaking - dummies

Når Start ikke starter i NaturallySpeaking - dummies

Når du gir kommandoen "Start" til Dragon NaturallySpeaking, du sier "Start America Online" eller "Start Microsoft Works" eller "Start Quicken", og programmet skal åpnes. Men hva hvis det ikke gjør det? Hva er greia? Start-kommandoen starter et program som er installert på maskinen din, og har enten et snarveisikon på ...

Når NaturallySpeaking Menykommandoer ikke fungerer - dummies

Når NaturallySpeaking Menykommandoer ikke fungerer - dummies

Når du gir en kommando til NaturallySpeaking, for eksempel "Klikk" og ingenting skjer, det sannsynlige problemet er at menyen Bruk menyer som er kompatible med skjermlesere, ikke er merket av. For å sjekke det: Velg Verktøy → Valg i vinduet NaturallySpeaking. Det er ikke noe poeng å fortelle deg hvordan du får tilgang til dette med stemmen, for det er akkurat ...