![Page 1: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/1.jpg)
INTEGRATING YOUR DOMINO
APPLICATIONS WITH MICROSOFT
PRODUCTS
Gary Devendorf
Microsoft
![Page 2: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/2.jpg)
REUSE EXISTING APPLICATIONS
� Production applications can be extended to interact with new
systems
� These extended interfaces can be used again and again in
different client applications
� No need to recreate
![Page 3: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/3.jpg)
USE BEST OF BREED APPLICATIONS
� The best tool for what you need to get done
� Excel for word processing?
� Applications are getting more complex
� End users expect more
![Page 4: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/4.jpg)
EXTENDING NOTES
4
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 5: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/5.jpg)
EXTENDING NOTES
5
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 6: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/6.jpg)
EXTENDING NOTES
6
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 7: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/7.jpg)
EXTENDING NOTES
7
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 8: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/8.jpg)
EXTENDING NOTES
8
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 9: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/9.jpg)
EXTENDING NOTES
9
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 10: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/10.jpg)
EXTENDING NOTES
10
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 11: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/11.jpg)
EXTENDING
NOTES
11
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 12: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/12.jpg)
EXTENDING NOTES
12
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 13: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/13.jpg)
EXTENDING NOTES
13
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 14: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/14.jpg)
EXTENDING NOTES
14
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 15: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/15.jpg)
SHARE POINT
![Page 16: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/16.jpg)
EXTENDING NOTES
16
Methods
HTTP
XML
Web Services
COM
ADO.NET
Web Parts
APIs
http://www.interoptips.com
![Page 17: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/17.jpg)
SECURITY OPTIONS WEB SERVICES
![Page 18: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/18.jpg)
USING NETWORK CREDENTIALS
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Cred As New NetworkCredential(TextBox2.Text, TextBox3.Text) ' Set User Name/Password credentials
'Dim Cred As New NetworkCredential("Joe User", "wordpass") ' Set User Name/Password credentials
Try
'DominoWS.Proxy.
'DominoWS.UseDefaultCredentials
DominoWS.Credentials = Cred ' asign credential to web service
DominoWS.PreAuthenticate = True ' force credentials in first call
TextBox4.Text = DominoWS.HELLO_NAME(TextBox1.Text) ' call call web service
![Page 19: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/19.jpg)
SECURITY XML WEB AGENT
![Page 20: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/20.jpg)
HOW DO THESE RICH CLIENTS FIT INTO
FUTURE ARCHITECTURES?
20
They are the future
![Page 21: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/21.jpg)
APPLICATION EVOLUTION
21
Domino
Server
Notes
ClientBrowser
Windows
Server
MS Office
Clients
Window
Forms
Mobile
DevicesOther
Clients…
![Page 22: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/22.jpg)
APPLICATION EVOLUTION
22
Future
Server
Notes
ClientBrowser
Domino
Server
MS Office
Clients
Window
Forms
Mobile
DevicesOther
Clients…
![Page 23: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/23.jpg)
CREATING DOMINO SERVICES
Domino Web Services
XML over HTTP
![Page 24: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/24.jpg)
CREATING A WEB SERVICE (R7+)
�Use Domino Designer
�Create "Web Service"
� Like creating an Agent
�Set properties in properties box
�Create LotusScript or Java class
�Generate WSDL - automatically
�Run Server
�Write WS client
![Page 25: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/25.jpg)
NEW DESIGN ELEMENT
![Page 26: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/26.jpg)
CREATE NEW WEB SERVICE
![Page 27: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/27.jpg)
ENTER LOTUSSCRIPT CLASS CODE
![Page 28: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/28.jpg)
VIEW WSDL FILE
![Page 29: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/29.jpg)
TIME TO TRY OUR WEB SERVICE
� Unlike VS.NET, Notes 7 has no way to test its Web services
� We must create a client application
� VS.NET only needs a network connection and the URL to the
WSDL file of the service
![Page 30: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/30.jpg)
R7 WEB SERVICES WSDL URL
� URL syntax of WSDL file:
http://MyServer/MyDatabase.nsf/MyWebService?WSDL
••In our example the URL is:In our example the URL is:
http://www.msdomino.net/orders.nsf/hello_world?wsdlhttp://www.msdomino.net/orders.nsf/hello_world?wsdl
![Page 31: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/31.jpg)
TRY THE URL WITH A WEB BROWSER
![Page 32: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/32.jpg)
WITH WSDL, CREATE WS CLIENTS
![Page 33: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/33.jpg)
A LOOK AT DOMINO WEB AGENT GENERATING
XML
� Web Agents execute with URL call
� Agent programs can do almost anything
� Creating a Web Agent that returns XML is easy
� Parameters are allowed
![Page 34: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/34.jpg)
LOTUSSCRIPT WEB AGENT CODE
Print "Content-type: text/xml“ 'Prevents Domino from sending default headers
Print |<?xml version="1.0" encoding="UTF-8" ?>|
Print "<CustomerOrders>" 'Orders is the root XML element
While Not ( doc Is Nothing ) 'Loop while there are document objects available
Print "<Orders>“ 'Send the parent element for each Order document
Print "<OrderID>"+FixChars(Cstr(doc. OrderID(0)))+"</OrderID>"
Print "<CustomerID>"+FixChars(Cstr(doc. CustomerID(0)))+ "</Customer..……
Print "</Orders>“ 'Close the Order element tag
Set doc = view.GetNextDocument( doc ) 'Get the next document in the view
Wend
Print "</CustomerOrders>"
End Sub
![Page 35: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/35.jpg)
LOTUSSCRIPT FIXCHARS FUNCTION CODE
Function FixChars(TextData As String) As String 'Replace XML chars For i=1 To Len(TextData)MyChar= Mid(TextData,i,1)Select Case MyCharCase "<"
F_XML= F_XML & "<"Case ">"
F_XML= F_XML & ">"Case |"|
F_XML= F_XML & """Case "'"
F_XML= F_XML & "'"Case "&"
F_XML= F_XML & "&"Case Else
F_XML= F_XML & MyCharEnd Select
NextFixChars=F_XML
![Page 36: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/36.jpg)
DOMINO XML DATA VIA URL
![Page 37: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/37.jpg)
NON-DOMINO SERVER – NOTES XML
http://www.proposion.com/OrdersDemo/OrdersXml.aspx
![Page 38: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/38.jpg)
WHY NOT USE DOMINO XML OBJECTS?
� No good reason other than backward compatibility
� it was easier – fewer lines of code
![Page 39: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/39.jpg)
XML/HTTP PROVIDE DATA/TRANSPORT
� This is only one method
� Very flexible with long reach
� An HTTP/XML interface Agent can be used over and over in
many clients
![Page 40: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/40.jpg)
ARCHITECTURE FOR THE FUTURE
� Why build on Domino platform if I’m moving to Hanover, DB2,
ASP.NET or something else in the future?
� By creating clients access with standards, the backend system can be
swapped with changing clients
� Reuse yesterday’s and today work
![Page 41: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/41.jpg)
WHO WILL BUILD THESE NEW
APPLICATIONS?
� Lotus Notes Developers
� VB.NET 90% the same syntax as LotusScript
� VS.NET experience similar to Domino Designer’s
� No one knows your applications better
� Hybrid applications are quick and easy
� Add features to existing applications
41
![Page 42: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/42.jpg)
FIND EXAMPLES OF DOMINO SERVICES
�� Domino Web ServicesDomino Web Services
�� Domino XML over HTTPDomino XML over HTTP�� http://interoptips.comhttp://interoptips.com
![Page 43: INTEGRATING YOUR DOMINO APPLICATIONS WITH MICROSOFT … · 2016. 7. 9. · Lotus Notes Developers VB.NET 90% the same syntax as LotusScript VS.NET experience similar to Domino Designer’s](https://reader035.vdocuments.site/reader035/viewer/2022071404/60f87a2cec36967dc0172bd8/html5/thumbnails/43.jpg)