© Copyright International Business Machines Corporation 2006. All rights reserved.
© Copyright IBM Deutschland GmbH 2006. Alle Rechte
vorbehalten.
Beim Installieren einer UDDI-Registry mit DB2® auf Windows® können Probleme auftreten, wenn der Installationspfad für WebSphere® Application Server Leerstellen enthält (wenn der Installationspfad für WebSphere Application Server zum Beispiel C:\Program Files\IBM\WebSphere\AppServer ist). Dies bewirkt, dass die Erstellung der UDDI-Registry auf der DB2-Datenbank fehlschlägt.
Es wird kein Fehler angezeigt, und das Szenario erstellt eine DB2-Datenbank und implementiert die UDDI-Anwendung auf dem Server. Die Datenbank wird jedoch nicht vorab mit den Informationen ausgefüllt, die erforderlich sind, damit die UDDI-Registry korrekt funktioniert. Dies hat zur Folge, dass der UDDI-Knoten nicht erstellt und nicht zum Server hinzugefügt wird.
Um dieses Problem zu beheben, installieren Sie WebSphere Application Server in einem Pfad ohne Leerzeichen (zum Beispiel C:\IBM\WebSphere\AppServer).
Wenn ein Arbeitsbereich mehrere aktive WebSphere-Web-Services enthält, geben manche URLs unter der Kategorie WebSphere-Web-Service im WSDL-Browser des Web-Services oder im Erkennungsdialog einen falschen Namen für die Port-Komponente an. Das inkorrekte URL-Muster sieht hierbei ungefähr wie folgt aus:
.../services/L<Name der Port-Komponente>?WSDL
Beispiel:
.../services/LEcho?WSDL
Um dies zu beheben, verwenden Sie den WSDL-Lokator für den Arbeitsbereich.
Bei WebSphere Application Server Version 6.0 besteht ein Problem mit der Länge von Verzeichnissen, was zur Folge haben kann, dass die Workbench bei Erstellung eines Web-Services, der unter Verwendung des Web-Service-Assistenten auf WebSphere Application Server Version 6.0 implementiert wird, nicht mehr reagiert. Dieses Problem tritt auf, wenn WebSphere Application Server Version 6.0 eine Ausnahmebedingung abfängt, weil es nicht möglich ist, die '.wsdl'-Datei für die '.war'-Datei, die generiert wird, vollständig zu verarbeiten. Der WebSphere-Prozess tritt in eine Endlosschleife ein, doch der Web-Service-Assistent wird nicht informiert, dass dieser Zustand eingetreten ist, woraus ein Deadlock resultiert. Da im Assistenten zu diesem Zeitpunkt des Prozesses die Schaltfläche 'Abbrechen' nicht aktiviert ist, gibt es scheinbar keine Möglichkeit, die Publizierung auf eine andere Art abzubrechen als durch die Beendigung des Workbenchprozesses.
Die Umgehung zu diesem Problem besteht darin, beim Arbeiten mit WebSphere Application Server Version 6.0 diese bekannte Datei-/Verzeichniseinschränkung sorgfältig zu berücksichtigen und dem entsprechend Profile in Installationsverzeichnisse mit möglichst kurzen Namen zu platzieren, zum Beispiel c:\profile. Standardmäßig können Profile in relativ tief eingebetteten Pfaden installiert sein, und der Versuch, Dateien in das temporäre Verzeichnis für Profile zu schreiben, schlägt schließlich mit einer Eingabe-/Ausgabeausnahme fehl, durch die die Publizierung angehalten wird.
Die Befehlszeilenscripts für die Web-Service-Erstellung (WSDL2WebService, WSDL2WebService13, WSDL2Client, WSDL2Client13) schlagen möglicherweise fehl, wenn sie vom Stammverzeichnis ausgeführt werden. Erstellen Sie ein Arbeitsverzeichnis und stellen Sie sicher, dass das Argument "-project" auf ein Verzeichnis verweist, das sich im Arbeitsverzeichnis befindet.