Unverständliche ERemotableException (10893)
-
Hallo,
mit dem BCB6 habe ich mir einen WebClient erstellt der über ein Interface
Daten anfordern (Aufruf einer Interface-Methode) und erhalten soll. Die
Verbindungsklassen zum Server werden mit Borlands THTTPRIO-Klassen
realisiert, die Verbindungsdaten (Location, Server-Name und -Port) extra-
hiere ich aus der Service-DLL.Von den drei im Service-Interface implementierten Methoden lassen sich
zwei ohne Probleme aufrufen, d.h. es wird eine Verbindung hergestellt und
sie liefern die erwarteten Daten. Die 3te produziert jedoch folgendes:Im Projekt WebClient.exe ist eine Exception der Klasse ERemotableException
aufgetreten. Meldung: EinFehler wurde entdeckt, während die Web Service-
Anfrage ausgeführt wurde. (10893)...Vielleicht weiß einer von euch, welcher Fehler hier aufgetreten ist. Sowohl
BCB-Hilfe, als auch Internet waren diesbezueglich nicht ergiebig.Danke im Voraus
Guido
-
Hallo
woher sollen wir das wissen? Ohne mehr Infos wie relevanten Quellcode, gesendete Daten und genauere Fehlerumstände?
So kann ich dir nur Debugger und eigene Logging-Funktionen empfehlen.bis bald
akari
-
Hallo akari,
so wird in meiner .exe-Datei die Verbindung zum Service
hergestellt:...
// BCB componente
THTTPRIO* myRIO;
// Aus der WSDL extrahiertes Interface
_di_IService theService;
// Erzeugung der Interface-Methoden
myRIO->QueryInterface(theService);// Setzen der Service-Parameter (aus WSDL extrahiert)
// z.B. http://localhost/derService/wsdl/myService
myRIO->WSDLLocation = ServicePfad;
myRIO->Service = ServiceName;
myRIO->Port = ServicePort;// COM-Initialisierung muß sein
TInitOleT<int> myOle;// Aufruf der einzelnen Methoden
AnsiString param1;
AnsiString param2;
AnsiString param3;// Dieser Aufruf liefert das erwartete 'result'
AnsiString result = theService->methode1(param1, param2);result = "";
// Dieser Aufruf verursacht besagte Exception
// Das Ergebnis dieser Methode soll in 'result' stehen
theService->methode2(param1, param2, param3, result);
...Wenn ich im Debugger diese letzte Zeile ausführen möchte,
passiert mehrere Sekunden lang nichts und anschließend wird
das Fenster 'Benachrichtigung über Debugger-Exception) mit
besagter Fehlermeldung geöffnet.Was passiert? Angedachte Möglichkeiten
- Timeout (auf welcher Seite?)
- Fehler im Service selbst
- Fehler während der Übertragung der Daten zum Interface
- Fehler in der Interfaceklasse (_di_IService)Vielleicht sehe ich ja auch den Wald vor lauter Bäumen
nicht, diese Fehlernummer ist für mich ohne jede Aussage.Ich hoffe, die Details oben erhellen mein Problem.
TIA Guido
-
Moin,
die Exceptionursache ist jetzt bekannt: Sie wird durch
ein Fehlverhalten im Webservice (Progress 4GL) verursacht,
dessen Fehlermeldung via SOAP-Fault an den Client weiter-
geleitet wird und dort die besagte Exception auslöst.Tschau Guido