NOTESSIDAN

Allt om Lotus Notes & Domino




Kod för att exponera och konsumera Webservices i Notes/Domino
Notes Domino är en s.k Klient-Server lösning, dvs Servern exponerar data/databaser och Klienten konsumerar data/databaser. På samma sätt fungerar Webservices.

Det är väldigt lätt att exponera en Webservice i Domino. Man behöver bara öppna Domino designer , skapa ett webservice designobject samt skapa en klass med dom metoder man vill ha. sen sköter Domino jobbet att exponera den.

Jag har gjort en enkel webservice här på Notessidan som vem som helst kan konsumera. Lotusscriptkoden här nedan utgör de funktioner som webservicen har.

Kod för att Exponera en webservice
Class Notessidan Private session As NotesSession Private db As NotesDatabase Public Sub New () Set session = New NotesSession Set db = session.CurrentDatabase End Sub Public Function getSize getSize = db.size End Function Public Function numberOfdocuments As Long numberofdocuments = db.AllDocuments.count End Function End Class

Min webservice har alltså 2 Metoder, getSize som returnerar bloggens databasstorlek och numberOfDocuments som returnerar bloggens antal dokument.

Vem som helst som har tillgång till en klient som kan konsumera en webservice kan alltså ange min Webservice URL och få reda på en del om denna bloggdatabas. (behöver alltså inte konsumeras ifrån Notes/Domino utan från vilken SOAP klient som helst, allt sker över HTTP)

Domino stödjer möjligheten att exponera en webservice från version 7, men inte att konsumera den. (kommer i Notes 8:an) så för att konsumera min egen webservice så använder jag Microsofts SOAP klient i en Lotusscriptagent.

kod för att Konsumera en Webservice
Sub Initialize Dim object As Variant Set object = CreateObject("MSSOAP.SoapClient") Call object.MSSoapInit("http://www.notessidan.se/A55B53/blogg.nsf/notessidan?WSDL") Print object.getsize Print object.numberofdocuments End Sub
Den som kör agenten ovan kommer att få returnerat storleken och antal dokument på bloggen i realtid.

Har du Domino Designer och internettillgång ? Prova själv min webservice
Ta agentkoden ovan och klistra in i en agent och kör agenten. (obs. MSSOAP.SoapClient krävs, ingår i Win XP tror jag)




Relevanta Poster på Notessidan:



Publicerad 2007-03-30 | Kommentarer: 4 | Läsningar: 3364
Kommentarer

Niklas Waller ( 2007-03-30 12:36:01 ) Websida
Hej Thomas,
Bra exempel. Jag var tvungen att testa litegrand. Det sättet du beskriver med Microsofts SOAP klient fungerade bra förstås. Provade även att konsumera från Notes8beta vilket också fungerade bra och jag har beskrivit hur jag gjorde i ett nytt inlägg -> http://thinkgreat.blogspot.com/2007/03/web-service-consumer.html Hoppas det var ok att jag gjorde testet på din web service.

Mvh / Niklas
Thomas ( 2007-03-30 12:52:32 ) Websida
Inga problem Niklas.

Inspirationen till denna post hittade jag här:

http://www-128.ibm.com/developerworks/lotus/library/web-services1/
http://www-128.ibm.com/developerworks/lotus/library/web-services2/
http://www-128.ibm.com/developerworks/lotus/library/web-services3/

Dom är alla skrivna av Julian Robichaux, mycket bra artiklar.

hm..jag måste fixa så att man kan klicka på länkarna va ?


- Thomas
Thomas ( 2007-03-30 14:04:37 ) Websida
Så nu kan man klicka på länkarna också.

- Thomas


Daniel L. ( 2007-04-02 22:06:11 )
Hej Thomas,

Ditt exempel funkar klockrent om man kör windows på klienten (eller på servern). Ett annat bra tips är att kolla (och söka på) applikationen "Stubby" på openntf.org. Den baserar sig på Axis-ramverket och genererar javakod (jar-filer, java-filer, etc) och innehåller en wizard för detta. Då får man plattformsoberoendet också.

http://www.openntf.org/Projects/pmt.nsf/0/25D3BA7ED616DD30862571DA0018BE8D


Jag tror (om jag inte minns fel) att Notes 8 också baserar sin WS-consumer på Axis. Dock så är Stubby körbar på tidigare versioner också.

M v h

Daniel



Sök på Notessidan
Thomas Adrian
ThomasCertifierad utvecklare och administratör inom Notes & Domino

Kontakta mig







Senaste Sökningarna på Notessidan
Sön - sharepoint (R:1)
Sön - räkna and antal and besökare (R:0)
Sön - browser (R:17)
Sön - stoppar and mail (R:1)
Sön - korrupt (R:3)
Sön - böcker (R:0)
Sön - kalendern (R:12)
Sön - feature (R:15)
Sön - print and mime (R:2)
Sön - länka (R:0)
Sön - databasen (R:94)
Sön - access (R:47)
Sön - outlook (R:15)
Sön - webanvändare (R:0)
Sön - google and maps (R:6)
Sön - juffe (R:2)
Sön - uidoc.print (R:1)
Sön - java and lotusscript (R:26)
Sön - besök (R:0)




Databasstatistik Blogg
Uppdateras var 15:e Minut

Antal Poster:562
Antal Kommentarer: 1404
Alla sidvisningar idag:
Unika Besökare idag:
Databasstorlek: 147,75Mb
Fixup: 2019-09-16 00:30:49
FT:2019-09-16 08:16:13
DB Procent använd: 99,8
Antal Agenter: 42
Antal Formulär: 65
Antal Vyer: 60
Antal Dokument: 7981
Antal Image Resources: 108
Antal Subformulär: 18
Antal Scriptbibliotek: 11
Totalt Antal Designelement: 576
Antal Attachments: 159
Antal Konflikter: 0
Server version 1: 405
Server version 2: Release 9.0.1FP9|August 14, 2017
Server Plattform: Windows/64
Ändrad: 2019-09-16 08:40:43
Server Tidszon: Z=-1$DO=1$DL=3 -1 1 10 -1 1$ZX=131$ZN=W. Europe
Region:
Kommentarsspam Idag: 5
Kommentarsspam Totalt: 18780


BlogRankers.com

Top Sites at iWEBTOOL.com

Fight Spam! Click Here!

Bloggtoppen.se

Listed on BlogShares

Increase website traffic

Top Internet Blogs

Site Checker