Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte -...
-
Upload
baerbel-weiss -
Category
Documents
-
view
218 -
download
0
Transcript of Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte -...
![Page 1: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/1.jpg)
Notes PHP Connectorzwei Welten verbinden
![Page 2: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/2.jpg)
2
AbstractFür die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen - auch verschiedene andere Technologien im Einsatz. Insbesondere in Verbindung mit dem Apache Webserver - laut Netcraft Statistik ca. 70 % der weltweiten Webserver - ist PHP eine weit verbreitete Entwicklungssprache für die Entwicklung dynamischer Browseranwendungen. Die Referenten stellen im ersten Teil die PHP Technologie im Kontext der IBM Software vor. Hierzu gehören neben Domino auch DB2 und Cloudescape sowie die Sametime Technologie. Im zweiten Teil stellen sie den von Visual Solutions entwickelten PHP to Notes Connector vor.
Der im Rahmen des Open Source CMS eZ Publish entwickelte Connector besteht aus zwei Teilen. Einer Komponente für Lotus Domino und einer Komponente für eZ Publish und damit PHP. Zur eigentlichen Datenübertragung zwischen diesen beiden Komponenten wird XML als Datenformat und HTTP als Übertragungsprotokoll verwendet. Das Konzept verfolgt dabei einen serviceorientierten Ansatz. Vorgestellt wird die derzeit verfügbare Funktionssammlung und ihre Anwendungsmöglichkeiten.
![Page 3: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/3.jpg)
3
DisclaimerIBM, the IBM logo, DB2, DB2 Universal Database, Domino, Everyplace, Lotus, the On Demand Business logo, Notes, WebSphere, Workplace and the Workplace family of marks are trademarks of International Business Machines Corporation in the United States, other countries, or both.
Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
Linux is a trademark of Linus Torvalds in the United States, other countries, or both.
Other company, product or service names may be trademarks or service marks of others.
The information contained in this documentation is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this documentation, it is provided “as is” without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this documentation or any other documentation. Nothing contained in this documentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM (or its suppliers or licensors), or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
![Page 4: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/4.jpg)
4
Referenten Stefan Weber (Dipl.-Inf.)
– Visual Solutions, Iserlohn
– www.visol.de
Andreas Schulte
– IBM Partnership Solution Center NordWest
– www.ibm.com/de/mittelstand/psc/
![Page 5: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/5.jpg)
5
Visual Solutions... entwickelt Kommunikations-lösungen für mittelständische Unternehmen und gestaltet Kommunikationsschnittstellen zu Marktpartnern.
– Lotus/IBM Business Partner seit 1997
– Schwerpunkt Web-Entwicklung: Content-Management, E-Commerce, Barrierefreie Gestaltung
– Database Publishing, Medienneutrale Datenbanken
IBM Partnership Solution Center NordWest– Teil der IBM Mittelstands- und
Developer Relations Organisation– PSCs in:
Berlin, Hamburg, Düsseldorf, Frankfurt, Stuttgart, München
– Unterstützung für IBM Business Partner durch:• Consulting• Workshops & Enablement• Porting• Testing• Unterstützung et al
Unternehmens Info
![Page 6: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/6.jpg)
6
Agenda•Notes – Geschichte & Basisinformationen
•PHP im Kontext der IBM Software•DB2 / Cloudscape, Sametime, Domino
•PHP Notes Connector•Funktionsübersicht•Beispiel
![Page 7: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/7.jpg)
7
Agenda•Notes – Geschichte & Basisinformationen
•PHP im Kontext der IBM Software•DB2 / Cloudscape, Sametime, Domino
•PHP Notes Connector•Funktionsübersicht•Beispiel
![Page 8: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/8.jpg)
8
Lotus Notes
9-Boxen-Modell Grundideen
Domino Server
communicate, collaborate, coordinate
eMail & PIM
Anwendungsserver Anwendungs-Templates
Maske
Feld
View
.nsf
.ntf
![Page 9: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/9.jpg)
9
9-Boxen-ModellReichweite
KomplexitätKommunikation KoordinationZusammenarbeit
Team
Unternehmen
Extern
![Page 10: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/10.jpg)
10
9-Boxen-ModellMail
SametimeBlog
DiskussionRSS Feeds
MailSametime
BlogDiskussionRSS Feeds
MailSametime
BlogDiskussionRSS Feeds
Notes Anwendung mitWeb-Frontend
TeamroomOffice-Bibl.
TeamroomOffice-Bibl.
Notes Anwendung mitWeb-Frontend
TeamroomOffice-Bibl.Notes/SAP
TeamroomOffice-Bibl.Power-UserAnwendung
Reichweite
KomplexitätKommunikation KoordinationZusammenarbeit
Team
Unternehmen
Extern
![Page 11: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/11.jpg)
11
Die Geschichte von Notes• 1973 PLATO Notes Entwicklung am Computerbased
Education Reserch Laboratory (CERL) der Universität Illinois• 1976 PLATO Group Notes (Unterscheidung zwischen privaten
und öffentlichen Inhalten)• 1984 Ray Ozzie, Tim Halvorsen und Len Kawell entwickeln
die Basis von Lotus Notes bei Iris Associates Inc.• 1986 Vor-Version von Lotus Notes im internen Einsatz• 1987 Lotus Development kauft die Rechte an Notes• 1989 Version 1 wird in den USA ausgeliefert• Anfang der 90iger Version 2.x in Deutschland• 1994 Lotus kauft Iris Associates Inc. – Iris bleibt aber
Entwicklungslabor für Notes• 1995 IBM kauft Lotus – insbesondere wegen der Notes
Technologie
![Page 12: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/12.jpg)
12
Lotus Notes & Domino Roadmap
1989 –Notes R1
1991 – Notes R2
1996 - Notes R4Notes/Domino R4.5
1993 - Notes R3
Personal ProductivityGroupware andCollaboration
1999 – Notes and Domino R52002 – Notes and Domino 6.0
2003 – Notes and Domino 6.5
Team ProductivityInstant messaging, Web conferences, team discussions, document and Web content management, e-learning, …
2004 – Notes and Domino 6.5.1; IBM Workplace products, technologies, solutions
Organizational ProductivityExpanding the reach of the “Team Productivity” era, with tools to extend collaboration into Web sites, portals and work spaces, mobile devices, and more…
embraced the web
embraced J2EE
ND8
2005 – Notes/Domino 7IBM Workplace Collaboration Services
…continuing long into the future
![Page 13: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/13.jpg)
13
Notes Begriffe• .nsf• Feld• Maske / Form• View• Replikation
![Page 14: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/14.jpg)
14
Notes Datenbank (.nsf)• NSF = Notes Storage Facility• keine relationale Datenbank• speichert ALLE Inhalte einer Notes Anwendung:
• vom Datensatz bis zur Zugriffskontrolliste• Datenstruktur am ehesten zu vergleichen mit
XML (Namens-Werte-Paar) ist aber kein XML (siehe hierzu DXL)
• mehr später...
![Page 15: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/15.jpg)
15
Notes Feld• Text• Date/Time• Number• Dialog Liste• Checkbox• Radio button• Listbox• Combobox• Rich Text
• Authors• Names• Readers• Password• Formula• Time zone• Rich Text
Lite• Color
![Page 16: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/16.jpg)
16
Maske• Notes speichert
Datenin losem Schema
• Masken geben Vorgabe bei der Erstellung von Dokumenten
![Page 17: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/17.jpg)
17
View
![Page 18: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/18.jpg)
18
Replikation• Synchronisation von Notes Datenbanken
• zwischen Notes Client und Domino Server• zwischen Domino Servern
• Abgleich von Teilmengen möglich• selektive Replikation
• Client kann Teildokumente abrufen• .nsf-Datei macht Replikation möglich• Übertragung erfolgt verschlüsselt
![Page 19: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/19.jpg)
19
Domino Server• Domino Server (seit Version 4.5 vorher Notes Server)
• Lotus Domino Server ist eine Entwicklerplattform für Groupware-Anwendung in verteilten Umgebungen mit Werkzeugen für Rapid Application Development (RAP). Domino bringt eine Benutzerverwaltung mit entsprechenden Sicherheitsmechanismen (Private- & Public-Key) und eine komplette verteilte Objekt-Datenbank (Object Store) als Grundfunktionalität mit.
• Auf dem Domino Server können die Standardsoftware- Komponenten der Lotus Domino Family unter Zugriff auf die Benutzerverwaltung und die Objekt-Datenbanken implementiert werden.
• Plattformunabhängigkeit: • Windows, Linux, AIX, HP-UX, i5/OS, zOS, Solaris• Keine strikte Abhängigkeit von Betriebssystemversionen und
Verzeichnisdiensten
![Page 20: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/20.jpg)
20
offene Strukturen
SECURITY
OBJECT STORE
OBJECT SERVICES API (OLE,COM, Java, JavaScript, LS, C++, XML,CORBA)
SMTP, IMAP, MAPI, POP,
LDAP
HTTP & XMLWebservicesCGI, PERL, SSI,
DSAPIJava Servlet
Engine
NNTP IIOP Notes
ACCESS CONTROL DIGITAL SIGNATURES
RSA & S/MIMEENCRYPTION
ROLES BASED ACCESS
NSF NSF NTF NTF
ADVANCED SERVICES
CLUSTERINGNOTES & WEB BILLING PARTITIONING
Dual Security - Dual Security - Notes & WebNotes & Web
Application Application ServicesServices
Open Open DevelopmentDevelopment
Open Client Open Client AccessAccess
Databases & Databases & TemplatesTemplates
Enterprise Enterprise ServicesServices
NT, OS/2, AS/400, S/390, AIX, HP-UX, Solaris, LINUXCross Cross PlatformPlatform
VIEW INDEXING
SEARCH ENGINE REPLICATIONDIRECTORY
SCH & TRIGGERED
AGENTS
WORKFLOW DECS APPLICATIONLOGIC
MESSAGINGROUTING
C&SFREE TIME
SEARCH
Infrastructure Infrastructure ServicesServices
![Page 21: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/21.jpg)
21
Domino Zugriffs-SteuerungNotes Client
Browser
Domino
Datenbank Dokument Feld
Notes-ID-Datei
Prüfung des ServerzugriffsPrüfung der Notes ID
Prüfung des ServerzugriffsPrüfung des Internet-Passworts
Prüfung der ACLPrüfung der Rollen
Prüfung von Leser-und Autorenfeldern
Feldver-schlüsselungen
![Page 22: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/22.jpg)
22
Anwendungsentwicklung• @Funktions• Lotus Script• Java Script• Java
• PHP
![Page 23: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/23.jpg)
23
Schnittstellen (-Standards)• SMTP, NNTP, POP3, IMAP• vCard• iCal• CORBA• WebServices• XML-Import/Export (DXL)• Datenpumpen• Support für RIM & mobile Endgeräte
![Page 24: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/24.jpg)
24
Domino Clients• Lotus Notes (Win & Mac, ab 7.0.1 Linux)• Domino Web Access• Domino Access for Outlook• PDAs• WebSphere Portal• Version 9: auf Basis der Eclipse RCP• externer Zugriff aus Java / PHP Apps
![Page 25: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/25.jpg)
25
PIM & Standard-Anwendungen
• eMail, Kalender & Aufgabenverwaltung
• Diskussion• Teamroom• Dokumenten-Bibliothek• RSS-Feed-Generator• Blog-Template
![Page 26: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/26.jpg)
26
Architektur – Domino zentrierte Betrachtung
Windows, AIX, i5, Unix, Linux
Lotus Notes
.NSF
DB2 / Cloudscape (RDBMS)
HTML BrowserEclipse Rich Client
WMC
WPS Everyplace
Zend Core.NSFDB2
Anmerkung:
PHP-Java
Integration
ist nicht
dargestellt
Web Service
DXL
Sametime
Excel
![Page 27: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/27.jpg)
27
Domino & PHP• single Server (Domino & Apache)• multi Server (Domino & Apache)
• PHP Integration Kit for WebSphere Application Server Community Edition• siehe Artikel auf alphaWorks:• http://www.alphaworks.ibm.com/tech/phpintwasce
![Page 28: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/28.jpg)
28
Single Server Konfiguration1. Möglichkeit zwei httpd mit diff. Ports
Httpd Port 80
mod_rewrite Httpd Port 81
Browser Request
Apache Domino
Abarbeitung des php Scripts kommt später!
Configuring Apache, PHP, MySQL and Domino for Windows 2000(...)1. Edit httpd.conf2. Add the following lines to the end of the file
LoadModule proxy_module modules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule rewrite_module modules/mod_rewrite.so
RewriteEngine onRewriteRule ^(.*).nsf(.*) http://localhost:81$1.nsf$2 [P]
Quelle: http://www.notestips.com/80256B3A007F2692/1/NAMO5RX3PX
![Page 29: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/29.jpg)
29
PROBLEM: die Lösung funktioniert nur für anonymen – read only -
Zugriff(...)In this configuration Port 81 can be blocked on your firewall as traffic to port 81 is only carried internally to the server. However this configuration has problems if you want to use it for more than Read Only pages. When you authenticate with the Domino server the server returns you to the URL it authenticated you with, which is the URL that was passed from Apache, which results in the browser displaying the internal port after login (see below), of course if this port is blocked by your firewall you will get a 404, however, as you are now authenticated with Domino we can remove the :81 from the URL (the blocked port) and the page will display fine. This is because at this point Domino is simply serving the page and not authenticating you. This behaviour is "as expected" and Apache has a method of dealing with such returning URLs. (...)Quelle: http://www.notestips.com/80256B3A007F2692/1/NAMO5RX3PXDomino_PHP_Install.pdf
![Page 30: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/30.jpg)
30
Single Server Konfiguration
2. Möglichkeit Domino httpd mit PHP via cgi
Httpd Port 80
Browser Request
Domino
cgi PHP runtime
Windows
Quelle:http://www-10.lotus.com/ldd/nd6forum.nsf/0/f4833adee01587cb852570480078f52d?OpenDocument
SuSE 8.2 - Domino 6.5.4 - PHP - can work!Posted by Alfa Tecnologias on 24.Jul.05 at 06:01 PM using a Web browserCategory: Domino ServerRelease: 6.5.4Platform: Linux - SuSE
(...)1. Schritt Installation PHP(...)3. With Domino AdministratorOpen your server,Select your Server Document and create a "Web URL mapping/redirection"( or a Internet Site Rule)
Specify the following:- "URL --> Directory"- incoming: /php-bin- Target: /usr/bin- Access: ExecuteSave and closeRestart HTTP (tell http restart)(...)DOMINO_PHP_CGI.pdf
![Page 31: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/31.jpg)
31
Dual Server Installation
DXLDSAPI
WebServHttpd Port 80 Httpd Port 80
Browser Request
Apache Domino
PHP-Script<?PHP...Autorisierung viaNotes User(Funktionsuser)...Abfrage Daten...VerarbeitungErgebnis?>
![Page 32: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/32.jpg)
32
Dual Server Installation
DSAPIDXL
WebServ
Httpd Port 80
Httpd Port 80Browser Request
Apache
Domino
PHP-Script<?PHP...Autorisierung ...Abfrage Daten...VerarbeitungErgebnis?>
DB2 / Cloudscape
API
![Page 33: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/33.jpg)
33
Agenda•Domino – Geschichte & Basisinformationen
•PHP im Kontext der IBM Software•DB2 / Cloudscape, Sametime, Domino
•PHP Notes Connector•Funktionsübersicht•Beispiel
![Page 34: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/34.jpg)
34
PHP & DB2 / Cloudscape• Zend Core for IBM
• einfache Installation / Setup• liefert alle benötigten DB2 UDB,
Cloudescape und 3rd party libraries
• NEU: mit kostenloser DB2-C• Cloudescape Anwendungen
können problemlos auf DB2 umgestellt werden (gleiche API)
• Webserver & Betriebssysteme• Apache 1.3.x, 2.0.x• AIX 5.2, 5.3• Linux RHEL 3, SLES 9
• PHP, DB2 UDB und Cloudescape online Dokumentation
• Integriert mit Zend PlatformTM
![Page 35: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/35.jpg)
35
PHP & Sametime• Integration via STLinks
• Java Script Code wird in PHP Script integriert• Namensfeld notwendig für Awarnes-Funktion• Login am Sametime Server aus PHP Anwendung• Apache & Sametime Login ? >>> LDAP Authentifizierung• STLinks Ergänzung für Sametime Server notwendig
(kostenlose Erweiterung)• IBM Redpaper verfügbar
• behandelt die Nutzung von STLinks in HTML Websites• Lotus Instant Messaging/Web Conferencing
(Sametime): Building Sametime-Enabled Applications• http://www.redbooks.ibm.com/redbooks/pdfs/sg247037.pdf
![Page 36: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/36.jpg)
36
PHP & Domino•ab Domino 5
•PHP kann zunächst einmal jeden XML Output des Domino Servers verarbeiten
•mit Domino 7 •Nutzung der Domino Webservices durch PHP
•mit PHP 5•wurde das XML Handling und die Arbeit mit
Webservices erweitert und verbessert
![Page 37: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/37.jpg)
37
LAMP & Domino Single Server Installation
•Nicht mit Standardkonfiguration möglich•Mod_rewrite notwendig
•Veranlast Apache .nsf Anfrage durchzuleiten•Domino Server Konfig:
•HTTP Port ungleich Apache Port• ....• (Google liefert eine (englische?) Website mit
guter Erklärung)
![Page 38: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/38.jpg)
38
Agenda•Domino – Geschichte & Basisinformationen
•PHP im Kontext der IBM Software•DB2 / Cloudscape, Sametime, Domino
•PHP Notes Connector
![Page 39: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/39.jpg)
39
Agenda• Interner Aufbau von Lotus Notes
• Zugriff auf Notes Daten• Datenbanktreiber, Objekte• HTTP, XML• Notes Connector• Besonderheiten, Bewertung
![Page 40: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/40.jpg)
40
Interner Aufbau von Lotus Notes
• Notes Datenbank : Container für Datensätze• enthält beliebig viele verschiedene Notes
• Note : Datensatz• enthält beliebig viele verschiedene Items
• Item : Container für Daten• speichert Daten (z.B. Zahl, Text oder Richtext)
• Alle Informationen einer Datenbank werden als Notes gespeichert, Notes mit Nutzdaten werden als Dokumente bezeichnet
• Gesamte Applikation in einer Datenbankdatei, auch Gestaltung und Sicherheit
![Page 41: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/41.jpg)
41
Notes - Dokument/Form/View
Dokument: Items
View:Form: Anzeige/Bearbeitung
![Page 42: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/42.jpg)
42
Interner Aufbau von Lotus Notes - Sicherheit
• Personen, Gruppen, Rollen und Richtlinien
• Zugriffsrechte für Datenbanken, Dokumente und Felder
• Verschlüsselung für Datenbankenund Felder
![Page 43: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/43.jpg)
43
Zugriff auf Notes Daten - Topologie
DMZ I nternesNetz
I nternet
PHPS erver
Dom inoS erver
![Page 44: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/44.jpg)
44
Zugriff auf Notes Daten - Datenbanktreiber
• Lotus Notes ist keine relationale Datenbank
• ODBC Treiber für Windows Anwendungen verfügbar• DB2 als Datenspeicher für Lotus Notes befindet sich
im Test Stadium. • Werkzeuge zum Datenabgleich zwischen Lotus Notes
und relationalen Datenbanken verfügbar z.B. LEI• Kein aktueller JDBC Treiber verfügbar
![Page 45: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/45.jpg)
45
Zugriff auf Notes Daten - Objekte
• Lotus Notes bildet Daten und Funktionen intern in einem Objektmodell ab.
• Front-End Klassen: nur im Notes Client verwendbar• Back-End Klassen:
• NotesSession, NotesDatabase,• NotesDocument, NotesItem,• NotesDocumentCollection, NotesView
• Notes Objekte können in diversen Programmiersprachen verwendet werden
![Page 46: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/46.jpg)
46
Zugriff auf Notes Daten - Objekte
• COM Schnittstelle:Verwendung von Notes Client Funktionen in anderen Windows Anwendungen
• JAVA Schnittstelle:Local oder Remote über CORBA verwendbar,Domino Internet InterOrb Protocol läuft als eigener Task im Domino ServerAchtung! Threading, Sessionhandling, Recycle
![Page 47: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/47.jpg)
47
Zugriff auf Notes Daten - Objekte
• Notes API:Plattformabhängige C/C++ Programme und Server Erweiterungen
• Fast alles ist möglich, DSAPI Programme laufen z.B. als "Filter" im HTTP Stack des Servers
• Achtung! Kleinste Fehler können katastrophale Folgen haben
![Page 48: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/48.jpg)
48
Zugriff auf Notes Daten - HTTP
• Domino Server kann standardmäßig HTML Code erzeugen, eigener oder fremder HTTP Stack
• Mail Anwendung (Domino Web Access) sehr leistungsfähig
• Mit Domino OffLine Service kann eine Notes Maildatenbank über Webbrowser in eine Lokale Cloudscape Datenbank repliziert werden
• HTTP Zugriffe lassen sich für Datenbanken und Designelemente generell sperren
![Page 49: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/49.jpg)
49
Zugriff auf Notes Daten - Domino XML Language
• Ziel: Abbildung aller Notes Datenstrukturen als XML Code
• ReadViewEntries: URL Parameter der die Daten in einem View als DXL Code liefert
Demo
![Page 50: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/50.jpg)
50
Domino XML Language - ReadViewEntries
http://www.visol.de/ezdemo.nsf/menuflat?ReadViewEntries
![Page 51: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/51.jpg)
51
Domino XML Language - Dokument
![Page 52: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/52.jpg)
52
Zugriff auf Notes Daten - Domino XML Language
• Ziel: Abbildung aller Notes Datenstrukturen als XML Code
• ReadViewEntries: URL Parameter der die Daten in einem View als DXL Code liefert
• Problem: Es existiert kein URL Parameter der Dokumente als DXL Code liefert.
• Lösung: Selbst ein Programm schreiben das die Notes Objekte anspricht
• Einfacher: NotesConnector verwenden
![Page 53: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/53.jpg)
53
NotesConnector - Architektur
Dom ino S erverPHP Anwendung
ConnectorNS F
NS FNS F
ConnectorHTTP(S )
XML
Web S erver
![Page 54: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/54.jpg)
54
NotesConnector - Eigenschaften
• Generische Lösung zum Zugriff auf Lotus Notes Daten• ermöglicht den lesenden und schreibenden Zugriff auf Text-,
Datum- und Zahlen-Felder in beliebigen Notes-Datenbanken.• Keine Veränderungen in den Notes Anwendungen
• für den Zugriff auf Ihre Notes-Daten sind keine speziellen Ansichten in Notes erforderlich – der Zugriff kann direkt auf Dokumente erfolgen.
• Kein direkter Webzugriff auf Zieldatenbanken• Zieldatenbanken müssen nicht für den Webzugriff geöffnet
werden.
![Page 55: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/55.jpg)
55
NotesConnector - Eigenschaften
• Unterstützt anonyme und authentifizierte Zugriffe• Durch die Unterstützung authentifizierter Zugriffe können
Sie die komplette Notes-Security für Ihre Notes-Anwendungen auch weiterhin nutzen.
• Nutzbar für beliebige PHP-Anwendungen• Spezielle Version für eZ Publish
• Die Extension wird einfach in eZ Publish aktiviert und ermöglicht so die komfortable Nutzung der leistungsfähigen eZ publish Templatesprache für Zugriffe auf Notes Daten.
• Verfügbar als Script-Lösung in einer Notes Datenbank oder als DSAPI-Filter
![Page 56: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/56.jpg)
56
Notes Connector - Funktionen
• Datenzugriff• Dokumentenmodus• Viewmodus
• Dokumentenselektion• Einzelselektion• Mehrfachselektion
• über Notes-View• über @Function• über Volltext-Suche
• Feldselektion
![Page 57: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/57.jpg)
57
Notes Connector - Funktionen
• Unterstützte Notes Datentypen• Text / Text-List• Number / Number-List• Date/Time / Date/Time-List• Attachments
• Lesender und schreibender Zugriff• Allen Daten werden als Array übertragen:
erlaubt einfaches durchloopen in PHP• Notes RichText (formatierter Text, eingebettete
Objekte) nur als Abstract bzw. mit zusätzlichen Mitteln
![Page 58: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/58.jpg)
58
Notes Connector - Demo• Einfache PHP-Beispiele
• Bistro, Mensa, etc.• Kalender
• Integration in eZ publish• Kalender• Mitarbeiter
![Page 59: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/59.jpg)
59
Zugriff auf Notes Daten - Besonderheiten
• Jedes Dokument kann völlig unterschiedliche Items enthalten
• Items mit gleichem Namen können unterschiedlichen Types sein
• Leere Items sind immer Text Items• Items können eine Liste von Texten, Zahlen oder
Datum/Uhrzeitwerten enthalen• Notes Richtext ist nicht gleich RTF
![Page 60: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/60.jpg)
60
Zugriff auf Notes Daten - Bewertung
• Datenbankorientiert: Domino als Datenbankserver• ODBC - Windows Standardprotokoll• Notes auf DB2 / LEI - Notes Daten in Relationalen
Datenbanken
• Objekt- / Funktionsorientiert: Domino als Applikationsserver• COM -> Windows Client Anwendungen• JAVA / CORBA -> Königsweg der IBM• C/C++ API -> (fast) alles Geht, hoher Aufwand
![Page 61: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/61.jpg)
61
Zugriff auf Notes Daten - Bewertung
• HTTP Zugriff: Domino als Webserver• Plain HTML -> schnell und einfach (parsen oder einbetten)• DWA -> leistungsfähig, als Frame einbetten (nur Mail)
• XML / DXL: Domino als Datenquelle• ReadViewEntries -> performant aber eingeschränkt nutzbar• NotesConnector -> universell• RSS Datenbank -> wie NotesConnector(LS) für RSS Feeds• SOAP -> selbst programmieren oder NotesConnector
verwenden
![Page 62: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/62.jpg)
62
Notes Connector - Resourcen• Q+A: Fragen zum Vortrag?• Fragen, Anregungen, Projektanfragen: [email protected]• Sonstige ViSol-Leistungen:
Beratung, Integrationssupport, Projektlösungen• Weitere Informationen / Downloads unter
http://www.visol.de/php• Produktflyer als PDF• Artikel aus PHP-Magazin 4/2006• Kostenlose PHP-Klasse (View-Connector)• Notes Connector Demo Version
![Page 63: Notes PHP Connector zwei Welten verbinden. 1 Abstract Für die Erzeugung dynamischer Webauftritte - sind neben den verfügbaren sehr guten Notes Lösungen.](https://reader036.fdocuments.net/reader036/viewer/2022081515/570491c41a28ab14218d9ec5/html5/thumbnails/63.jpg)
63
IBM Resourcen• IBM Partnership Solution Center
• Anlaufstelle für Developer• Informationen zum
IBM Business Partner Programm• www.ibm.com/developerworks/• www.redbooks.ibm.com