”Ett sätt att distribuera Business Objects via webben”

Slides:



Advertisements
Liknande presentationer
Tomas Sandström, Adtollo
Advertisements

Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305
Morgondagens datorstöd för ledningssystem Arbetsmiljö. Yttre miljö. Kvalitet.
Interface.  Interface är en datatyp och har alltså egen syntax och en hel del egna regler för vad arv från interface innebär.  Interface är renodlad.
ebXML Awareness Hvorfor, hvornår, og hvordan skall man bruge ebXML? Gösta Mellquist Senior Consultant, e-ComLogistics.
Att söka och förvalta kunskap
FTP, HTTP, HTML, XML och XHTML
Mashups Per K, Vad är en mashup? • Mashup är en typ av webbapplikation som sammanställer information och funktionalitet från fler av varandra.
Miljarder möjligheter på en plats!
Lektion 6 Mahmud Al Hakim
Internet Explorer Browser - läsare
Programmering B PHP Lektion 1
Sömlösa övergångar Per Granstrand, Verksamhetsarkitekt - Bolagsverket
Inmatning till databaser
Programmeringsteknik Föreläsning 6 Skolan för Datavetenskap och kommunikation.
Next previous Internetprogrammering 2000 Internetprogrammering 2000 Föreläsning 10 Distribuerad programmering med Javas RMI, Remote Method Invocation.
Fortsättningskurs i Programmering lektion 6
XML Web Services i praktiken.  Arkitekturen bakom Web Services  SOAP  WSDL  Testning av Web Services  ACT  GXA – ”Global XML Architecture”  WS-Security.
OOP Objekt-orienterad programmering
Metoder i java Det finns två typer av metoder i java
Arv.
Objektorienterad tänkande
Polymorfism.
NETinfo 2009–10-09 Magnus Persson Epost: Telefon: 046 –
Föreläsning 6 Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
Next previous Innehåll Inledning Några enkla exempel Pekare till och kort beskrivning av större exempel Speciella referenser (som används i marginalen)
Introföreläsning CS Om publiceringssystem, lektion ett.
Alice in Action with Java
Från Kartago till WMS Mikael Grimheden Kristianstads kommun
Kartdistribution med Web Map Services
Föreläsning 13 Polymorfism, Paket och JAR-filer. Polymorfism Ordet härstammar från grekiskan Poly – många Morf – form Polymorf – många former Någonting.
Klasser och objekt Klasser, objekt och instansvariabler
Programmering B PHP Lektion 1 Mahmud Al Hakim Folkuniversitetet
int res2=Math.max(tal1,tal2);
ASP.NET MVC4 + NoSQL = Major Awesomness. IoC Container.
- digital avverkningsanmälan
Internet Styrdatorer och kablar Uppkopplade användare Servrar 182.QRZN.
Stefan Andersson, Uppsala universitet 1 TestSök Presentation av ett BIBSAM-projekt.
UTVECKLING MED RAMVERKET.NET Marcus Medina. Dagens visdomsord ” Ingen vet vad han klarar innan han har försökt. ” - Publilius Syrus (85 f.Kr.-43 f.Kr.).
Projekt och Arkitektur
1. En infrastruktur för programutveckling
Föreläsning 8 Arv och abstrakta klasser. Arv Definierar en klass utifrån en redan existerande klass Den nya klassen utökar den ärvda klassen ( extends.
PEPPOL – en infrastruktur för effektivare e-kommunikation.
Utveckling med ramverket .net
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
XHTML & CSS Introduktion Erik Nahkala
Next previous RMI, Remote Method Invocation Om du har boken av Marty Hall, läs avsnitt 15.8 För fler exempel se:
Föreläsning 5 Arrayer & ArrayList Hur man använder API:n
… för utvecklare! Johan Lindfors. Webbläsare Applikationsserver Webbserver Dynamisk HTML motor Affärslogik RDBMS Applikationsserver?
Network Services (Nätverkstjänster) Client/Servers And Their Interaction (Client/Server och deras interaktion)
Välkomna Per Ahlberg Johan Lindfors. Hur kan vi bli bättre...  Era utvärderingar är viktiga!  Betygsätt innehåll, talare, relevans  Kommentera gärna.
Mashups Per K, Vad är en mashup? Mashup är en typ av webbapplikation som sammanställer information och funktionalitet från fler av varandra.
UTVECKLING MED RAMVERKET.NET Marcus Medina. Dagens visdomsord ” Oavsett om du tror att du kan, eller om du tror att du inte kan, har du helt rätt. ” -
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( )‏ Innehåll:  Introduktion till Java EE (Enterprise Edition)  Enterprise Java Beans.
Föreläsning 4 Klasser Och Objekt.
FunktonalitetRIV TA ProfilWS-I ProfilCentrala Specifikationer Grundläggande interoperabilitet Protokoll baserad säkerhet Basic Profile v2.0 Basic Profile.
Funktonalitet RIV TA Profil WS-I Profil Centrala Specifikationer
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Programmeringsteknik för K och Media
Föreläsning 7 programmeringsteknik och Matlab 2D1312/2D1305 Metoddeklaration och parametrar Arrayer och ArrayList.
1 Föreläsning 6 Repetition på metoder Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
1 Föreläsning 4 Metoder & parametrar Array API och klassen ArrayList.
OOP&M - teori1 OOPM del II– Föreläsning vecka Mer om ärvning.. Abstrakta klasser/metoder Gränssnitt/Interface klasser.
Föreläsning 3 Väsentliga delar i ett Javaprogram Input i paketet extra
Introduktion till SAML federation Varför använda SAML federation för elektronisk legitimering och underskrift Stefan Santesson Martin Lindström.
THE START OF THE ERP STORY
Internet Historia: 1964 Kommunikationsystem för försvaret (USA)
RMI Av: Josefina & Sarah DS04.
PoC Mobilt Efos
Göra en enkel webbsida med word
Presentationens avskrift:

”Ett sätt att distribuera Business Objects via webben” Web Services ”Ett sätt att distribuera Business Objects via webben”

Vad är en Web Service? .NET-komponent över Internet Koden exekveras på webbserver Används som vanlig komponent Parametrar kan skickas in Returvärden skickas tillbaka Här borde det läggas till en bild…

Fördelar med Web Services Enkel att implementera Nyttja tjänster från andra utvecklare En tjänst kan användas av olika användare i olika syften Plattformsoberoende Sprida arbetsbörda på olika servrar Kan användas genom brandväggar Plattformsoberoende via SOAP och XML som är öppna standarder Ex: ASP.NET-sida kan ligga på en server, WebService med databaskoppling på en annan server. Webservern belastas inte av databaskopplingen.

Historia Tre olika utvecklare Problem med bristande standarder DCOM RMI CORBA Problem med bristande standarder Svårimplementerade DCOM – Microsoft RMI – Sun, Javabaserat

Protokoll Tre standardprotokoll för kommunikation: HTTP-Get HTTP-Post SOAP

HTTP-Get och HTTP-Post Gammal beprövad teknik Främst hjälpprotokoll Används vid test av Web Service Säkrar bakåtkompatibilitet Endast enkla datatyper (int, string osv) Get och Post är vad som har använts från tiderna s begynnelse SOAP kommer nog att bli större, men vid enklare tjänster… Gamla ASP-sidor kan använda ASP.NET-Web Services

SOAP Simple Object Access Protocol Bygger på XML Kan använda olika transportprotokoll Kan skicka komplexa datatyper DataSet Struct Enklare objekt Kan använda olika transportprotokoll, ex HTTP, SMTP, MIME XML används för att skicka data, SOAP används när man skickar kommandon eller instruktioner Vad är en Struct??

Så fungerar en Web Service För att hitta och implementera en Web Service används: UDDI DISCO WSDL Universal Discovery, Description and Integration = UDDI DISCOvery Web Service Description Language = WSDL

Så fungerar en Web Service Exempel på kreditskortsservice: 1. Credit card Web Service 2. UDDI 3. Web Service Consumer WebService DISCO 4. DISCO WSDL 5. 6. WSDL Proxy

Så fungerar en Web Service Söka efter kreditkortsservices på UDDI (www.uddi.org) Välja intressant Web Service i resultatlistan Visar länkar till WSDL och DISCO samt information om servicen och företaget Uddi.microsoft.com 3. Det går att ange egen information när man registrerar hos UDDI.

Så fungerar en WebService Följ länken till DISCO-filen för mer information Kontrollera WSDL-dokumentet för test och parameterinformation Skapa proxyobjekt för kommunikation med Web Service

UDDI Universal Discovery, Description and Integration www.uddi.org Samlar alla offentliga Web Services på ett ställe Som att registrera webbsida på sökmotor Uppbyggt i XML Sök på ”gronsakskungarna”

DISCO För att hitta Web Services Tillhandahålls av servicens utvecklare Kan innehålla ett företags samtliga Web Services Dynamisk och manuell information Dynamisk letar på servern Manuell länkar till angivna services Dynamisk: exclude anger mappar som inte ska sökas efter webservices Manuell kan länka till services på fler än en server

WSDL Web Services Description Language Beskriver Web Servicen i XML-format Hur servicen används – Parametrar och returvärden Var servicen finns Alla ingående metoder Information för olika protokoll

WSDL Genererar testgränssnitt automatiskt Alla webbmetoder kan testas Testen sker med HTTP-GET Parametrar anges i webbformulär Returvärden visas som XML Visa grönsakskungarna

Proxyobjektet Skapas på klientdatorn utifrån WSDL Sköter kommunikationen med WebServicen Används som ett lokalt objekt Innehåller referenser till Web Servicens alla webbmetoder

Proxyobjektet Skapas automatiskt i Visual Studio när man adderar en webbreferens Kan skapas manuellt från i kommandoprompten med wsdl.exe Måste först kompileras om det skapas via kommandoprompten Syntax vid kommandoprompt: wsdl /language:VB sökväg\namn.wsdl

Att skapa en Web Service Importera System.Web.Services Ange klassen som <WebService()> Ange metoder som <WebMethod()> Metoder utan <WebMethod()> kan inte anropas utifrån Metoder utan <WebMethod()> kan användas internt i servicen men inte utifrån

Att skapa en Web Service Exempel: grönsakshandeln

Att konsumera en Web Service Skapa ett proxyobjekt Deklarera instans av proxyobjektet Använd proxyobjektets metoder Dim bildwebservice As New localhost.Service1() test = bildwebservice.SearchString(id, sok, _ soktext) Visa: Lägg till webbreferens i Visual Studio

Metoder och attribut Namespace gör det möjligt att skilja på metoder med samma namn som hör till olika Web Services Description beskriver för användaren hur servicen/metoden används Session låter Web Servicen komma ihåg användare Namespace ska vara unik, är ofta företagets webbadress. Syntax: <WebService(Attribut:=”blablabla”)> i VB, <WebService(Attribut=”blablabla”)> i C#