22. Januar 2015 17:49
Hallo zusammen,
mal wieder sucht der Verzweifelte Azubi Hilfe bei den Profis
Leider Gottes dokter ich schon seit Wochen daran rum und verliere bald den letzten Nerv.
Mein Problem ist folgendes:
Ich greife per RDP auf ein Kundensystem zu. Hier stehen mir 2 RDPs ingesamt zur Verfügung: Die Live-Maschine und die Test-Maschine.
Beide Maschinen können ohne Probleme auf die Live-Datenbank unseres Kunden zugreifen (auf beiden ist der NAV 2009 R2 Classic - Build 6.00.32012 - in Nutzung).
Innerhalb der Live-Datenbank habe ich eine Schnittstelle per XML/HTTP zu einer REST-API programmiert.
Hatte bei Verbindungen zur Test-API bisher auf beiden Maschinen geklappt. Die Verbindung klappt (immer aus der Live-DB aufgerufen) nur von der Test-Maschine ausgehend.
Wenn ich exakt den selben Code mit den selben Parametern in der Live-DB aber ausgehend von der Live-Maschine aufrufe erhalte ich folgenden Fehler:
"Der Aufruf zum Member send ist fehlgeschlagen. msxml3.dll gab die folgende Meldung zurück: Zugriff verweigert"
Ich habe die Automationserver auch schon von Microsoft XML, v3.0 bis Microsoft XML, v6.0 durchgeswitcht.
Die Klassen von ServerXMLHTTP bis zu XMLHTTP60.
Leider sind meine Coding-Fähigkeiten bis dato leider schwer auf Navision begrenzt und wie ich z.B. die DLL debuggen könnte weiß ich überhaupt nicht.
Ich glaube aber ausschließen zu können dass die DLL selbst als Datei für mich nicht zugreifbar ist, da die selbe Programmierung für die Test-API des Anbieters klappt.
Somit nochmal in Kurzform:
Die Test-Maschine kann mit der Live-DB auf die Live-API zugreifen.
Die Live-Maschine kann mit der Live-DB
nicht auf die Live-API zugreifen.
Der Code ist folgender:
- Code:
Setup.GET;
CLEAR(HTTP);
CREATE(HTTP);
HTTP.open('GET','https:\\myapiurl.de','',MyAPIUserName,MyAPIUserPassword);
CLEAR(XMLInput);
CREATE(XMLInput);
HTTP.send(); //Zeile in der der Fehler auftritt
XMLInput.load(HTTP.responseXML);
IF HTTP.status <> 200 THEN
ERROR(FORMAT(HTTP.status)+' '+HTTP.statusText);
CLEAR(HTTP);
Somit frage ich euch: Hat wer einen Denkansatz wodurch der Unterschied zu Stande kommen könnte? Ich verzweifle gerade
Viele Grüße
SIPA aka Paul
//EDIT: Beide Maschinen konnten vorher die Test-API erreichen die per HTTP zu erreichen war. Die Unterschiede tauchen erst bei der Live-API mit HTTPS auf.
Zuletzt geändert von Sipa am 9. April 2015 15:00, insgesamt 1-mal geändert.