Developing E-Business Applications Using Lotus Enterprise Solution Builder R3.0
Total Page:16
File Type:pdf, Size:1020Kb
Developing e-business Applications Using Lotus Enterprise Solution Builder R3.0 Seiji Hamada, Masaya Higuchi, Isao Kadowaki, Makoto Katayama, Shuhichi Murai, Kaori Nanba, Takashi Saitoh, Naomi Zenge International Technical Support Organization www.redbooks.ibm.com SG24-5405-00 SG24-5405-00 International Technical Support Organization Developing e-business Applications Using Lotus Enterprise Solution Builder R3.0 March 2000 Take Note! Before using this information and the product it supports, be sure to read the general information in Appendix B, “Special notices” on page 269. First Edition (March 2000) This edition applies to Lotus Enterprise Solution Builder for Domino Release 3.0. Comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. JLU Building 107-2 3605 Highway 52N Rochester, Minnesota 55901-7829 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright International Business Machines Corporation 2000. All rights reserved. Note to U.S Government Users – Documentation related to restricted rights – Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp. Contents Figures....................................................ix Tables....................................................xiii Preface...................................................xv The team that wrote this redbook. ..................................xv Commentswelcome............................................ xvii Chapter 1. Introduction ......................................1 1.1Businessenvironment.....................................1 1.2FeaturesofESB..........................................1 1.3PositioningESB..........................................3 1.3.1 Domino Enterprise Connection Services: Data virtualization.....3 1.3.2LotusEnterpriseIntegrator:Datamovement.................3 1.3.3LotusEnterpriseSolutionBuilder:Completecustomization.....4 1.3.4 Lotus Domino Connectors . ............................4 1.4ESBfunctions...........................................5 1.4.1Runtimeenvironment..................................6 1.4.2Developmentenvironment..............................7 Chapter 2. Architecture and configuration .......................9 2.1ESBarchitecture.........................................9 2.1.1ESBRuntime........................................9 2.1.2ControlbetweentheclientandESBRuntime................9 2.1.3Clientapplicationprogramminginterface...................9 2.1.4 Connection to backend data sources .....................10 2.2 Supported platforms and system requirements. ................14 2.2.1 Supported platforms . .................................14 2.2.2 Windows NT version ESB Runtime. ......................14 2.2.3AIXversionESBRuntime..............................15 2.2.4SolarisversionESBRuntime...........................15 2.2.5 ESB Developer......................................15 2.2.6 Windows version of Client Enabler . ......................16 2.2.7 AIX version of Client Enabler ...........................17 Chapter 3. Getting started with ESB ...........................19 3.1Lesson1:CreatingyourfirstESBprogram.....................19 3.1.1StartingtheESBIDE.................................19 3.1.2 Editing the Initialize procedure ..........................20 3.1.3 Running and stopping the programs ......................21 3.1.4Savingtheprograms.................................21 iii 3.2Lesson2:DefiningaPublishedclass.........................21 3.2.1ClassCreationtool...................................21 3.2.2 Installing a member . .................................23 3.3Lesson3:Creatingaclientprogram..........................23 3.3.1ClientCodeCreationtool..............................23 3.3.2 Running a program. .................................25 3.4Lesson4:CreatingaclientprogramusingNotesLotusScript.......25 3.4.1Creatinganewclientform.............................25 3.4.2Creatingaform(forNotesR5)..........................26 3.4.3Creatingaform(forNotesR4)..........................28 3.4.4Creatinganeventscript...............................30 3.4.5Savingaform.......................................32 3.4.6 Running a program. .................................33 3.5Lesson5:Handlingerrors.................................33 3.5.1Editingaform(forNotesR5)...........................33 3.5.2Editingaform(forNotesR4)...........................34 3.5.3Editinganeventscript................................35 3.5.4 Running a program. .................................36 3.6Lesson6:Obtainingclientinformation........................36 3.6.1Editingaserverprogram..............................36 3.6.2 Running a program. .................................37 3.7Lesson7:CreatingaclientprogramusingVisualBasic...........37 3.7.1Creatingaclientprogram..............................37 3.7.2 Running programs . .................................39 3.8Lesson8:TheLSServerclass..............................39 3.8.1Editingserverprograms...............................39 3.8.2 Running a program. .................................41 Chapter 4. Server application programming.....................43 4.1ESBRuntime...........................................43 4.1.1 ESB Runtime development procedure ....................44 4.2Publishedclass.........................................48 4.2.1ExampleofthePublishedclass.........................49 4.2.2Objectinitializationanddeletion.........................52 4.2.3TransmittingdatafromESBRuntime.....................53 4.2.4Transferringarraydata................................54 4.2.5Transferringuser-defineddata..........................56 4.3SharingdataandresourcesbetweenPublishedclassobjects......58 4.3.1 ESB threads . ......................................58 4.3.2 Global variables and Published classes . ................59 4.3.3LSServerclass......................................61 4.3.4 Global threads and serialization . ......................64 4.3.5SsSharedStorageclass...............................65 iv Developing e-business Applications Using Lotus Enterprise Solution Builder R3.0 4.4 Error handling ..........................................67 4.4.1ONERRORstatementandRESUMEstatement.............67 4.4.2 Runtime error handling when client program ended abnormally . 69 4.5Security...............................................69 4.5.1 Authentication and access control . ......................69 4.5.2 Authentication when using DCOM . ......................71 4.5.3 Authentication when IIOP is used . ......................72 4.5.4 Anonymous authentication . ...........................72 4.5.5 OS authentication. .................................72 4.5.6 Authentication using LDAP . ...........................73 4.5.7 Authentication using a user-defined exit routine . ...........73 4.5.8Accesscontrol......................................76 4.5.9ProgrammableaccesscontrolusingLotusScript.............76 4.5.10 Declarative access control using project environment variables 78 4.5.11 Declarative access control using Notes database ACL . .....80 4.6DesigninganESBapplication..............................81 4.6.1 Programming model for ESB applications. ................81 4.6.2 Synchronizing Notes user and ESB user authentication . .....82 4.6.3DesigningaPublishedclassinadistributedenvironment......83 4.6.4ESBprojectdesignrelatedhints.........................84 4.7Othertopics............................................86 4.7.1Timer.............................................86 4.7.2CallingtheDLLfunction...............................87 4.7.3Obtainingaccesslogsusingtheexitroutine................88 Chapter 5. Client application programming .....................91 5.1Overview..............................................91 5.1.1 Clients supported by ESB. ...........................92 5.1.2Clientapplicationcreationflow..........................93 5.1.3Theserverprogramtobeused..........................94 5.2Notesapplication........................................95 5.2.1Creatingaclientform.................................95 5.2.2CreatingaPublishedclassobject........................97 5.2.3 Calling a procedure . .................................98 5.2.4Displayingtheresult..................................99 5.2.5 Error handling. ......................................99 5.2.6Deletingobjects....................................100 5.2.7Summary.........................................100 5.3Webapplications.......................................102 5.3.1 Creating a client page................................103 5.3.2CreatingaPublishedclassobject.......................113 5.3.3 Calling a procedure . ................................114 5.3.4Displayingtheresults................................115 v 5.3.5 Error handling. .....................................116 5.3.6Deletinganobject...................................116 5.3.7Summary.........................................116 5.4VBapplication.........................................119 5.4.1Creatingaclientscreenview..........................119 5.4.2CreatingaPublishedclassobject.......................121 5.4.3 Calling a procedure . ................................122 5.4.4Displayingtheresult.................................122 5.4.5 Error handling. .....................................122 5.4.6Deletinganobject...................................123 5.4.7Summary.........................................123 5.5Programminghints......................................125 5.5.1