Das DMS stellt benötigte Funktionen bereit für:
- den Import von neuen Dokumenten
- den Import von überarbeiteten Dokumenten
- der Suche von Dokumenten
- den Export von Dokumenten
- administrative Funktionen wie Ping, Versionsinfo …
Es sollte ein Weg aufgezeigt werden, wie die Funktionalitäten des DMS vom Team Developer verwendet werden können. Die bestehende ActiveX-Schnittstelle des DMS sollte nicht mehr verwendet werden, da lt. Hersteller des DMS diese nicht weiter supported wird und evtl. in der Folgeversion entfallen könne. Web Service war die Alternative.
Bei dem DMS-Web Service handelt es sich um eine Schnittstelle mit recht komplexen und verschachtelten Datenstrukturen. Weiterhin besteht bei der Weitergabe von Dokumenten an den Web Service die Forderung, dass hierbei MTOM (Message Transmission Optimization Mechanism, eine W3C-Empfehlung für die Übertragung binärer Daten in Web Services) aktiviert sein muss.
Am ersten Tag ging es darum, einen Weg zu finden, den Web Service vom Team Developer aus, zu konsumieren.
Win32: Die Web Service Proxy-Klassen wurden zwar vom Web Service-Wizard des Team Developer erstellt, allerdings wurde das Request falsch erstellt, wodurch jede Web Service-Anfrage mit entsprechender Fehlermeldung verlief.
.NET: Mittels des .NET Web Service-Wizard wurde die Schnittstellen-DLL erstellt, konnte auch für einige Funktionen mit einfachen Datentypen verwendet werden, aber Funktionen mit verschachtelten Strukturen konnten auch hier nicht verwendet werden.
Damit schlugen die Versuche, den Web Service mit Team Developer eigenen Mitteln zu konsumieren, fehl.
Die Einbindung des Web Services in ein C#-Test-Projekt mit Visual Studio konnte mit Erfolg stattfinden. Die nachfolgend erstellten Testfunktionen für die Web Service-Schnittstelle konnten mit Erfolg erstellt werden. Hierbei ging es um folgende Funktionalitäten:
- Ping
- Versionsinfo abfragen
- Dokumente suchen
- Import eines Dokumentes
Auf dieser Grundlage wurden die Funktionalitäten aus der Testanwendung in eine .NET-DLL extrahiert und diese im Team Developer-Test-Projekt eingebunden. Somit wurde der Web Service in einem .NET-Assembly gekapselt und konnte dann vom Team Developer verwendet werden.
Ein entsprechendes Test-Projekt wurde begonnen, einige Funktionen zur Demonstration erstellt.
Für weitere Funktionen fehlte dann doch die Zeit, aber der gezeigte Weg war für den Kunden hilfreich und durchführbar. Der Import erfolgte bisher nur mit kleinen Dokumentgrößen, die scheinbar auch ohne MTOM-Aktivierung auskommen. Ein Test mit größeren Dokumenten muss noch erfolgen und die MTOM-Aktivierung mittels WSI 3.0 erfolgen.
Eine weitere Unterstützung durch MD Consulting ist vorgesehen.