ich eine antedeluvian Notes-Anwendung bin Aufrechterhaltung derein Timeout auf webservice Verbraucher Einstellung mit org.apache.axis.client.Call gebaut und läuft auf Domino
über eine manuell ‚Webservice‘ zu einem SAP-Backend-VerbindungAuf dem Server wird Domino Release 7.0.4FP2 HF97 ausgeführt.
Der Webservice ist nicht der Webservice Consumer, sondern ein großer Java-Agent, der Apache soap.jar (org.apache.soap) verwendet. Unten ein Beispiel für den aufrufenden Code.
private Call setupSOAPCall() {
Call call = new Call();
SOAPHTTPConnection conn = new SOAPHTTPConnection();
call.setSOAPTransport(conn);
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
Es gab eine Änderung im SAP-System, die nun 8 Minuten dauert (verifiziert vom SAP-Team).
Ich erhalte eine Fehlermeldung wie folgt:
[SOAPException: faultCode=SOAP-ENV:Client; msg=For input string: "906 "; targetException=java.lang.NumberFormatException: For input string: "906 "]
ich einen Blog-Artikel beschreibt die Fehlermeldung ganz genau gefunden:
https://thejavablog.wordpress.com/category/jmeter/
und ich zu der Hypothese gekommen dass es sich um eine Timeout-Nachricht handelt, die zu meinem Call-Objekt zurückkehrt und dass diese Timeout-Nachricht falsch analysiert wird, daher die NumberFormat-Ausnahme.
Mit Blick auf meine Protokolle kann ich sehen, dass es einen Zeitunterschied von 62 Sekunden zwischen meinem Anruf und der Antwort gibt.
ich, dass der Server im Serverdokument, Registerkarte Internet-Protokolle/HTTP/Timeouts/Anfragen Timeouts von 60 Sekunden bis 600 Sekunden, und die HTTP-Task mit
tell http restart
Neustart geändert werden Einstellung empfohlen Ich habe Führen Sie die Tests erneut aus und ich erhalte den gleichen Fehler, und der Zeitunterschied beträgt immer noch etwas mehr als 60 Sekunden, was ich nicht erwartet habe.
Ich las Blog-Eintrag Michael Rulnau
http://www.mruhnau.net/2014/06/how-to-overcome-domino-webservice.html
die
http://www-01.ibm.com/support/docview.wss?uid=swg1LO48272
zu diesem April Punkte, aber ich bin nicht davon überzeugt, dass dies in diesem Fall gelten würde, da es Auf keinen Fall würde IBM wissen, dass mein Java-Agent tatsächlich einen Soap-Anruf tätigt.
Meine aktuelle Hypothese ist, daß entweder die I SetTimeout() Methode auf
org.apache.axis.client.Call
https://axis.apache.org/axis/java/apiDocs/org/apache/axis/client/Call.html
oder auf der org.apache.soap verwenden .transport.http.SOAPHTTPConnection
und dass der Timeout-Wert ist ein Apache de Fehler, nicht etwas, das vom Domino-Server gesteuert wird.
Ich wäre dankbar für jede Hilfe.
Hallo Emmanuel, ich dachte nicht an die maximale Ausführung von LotusScript/Java, aber es ist auf 10 Minuten während des Tages und 15 Minuten während der Nacht eingestellt, so dass es meinen Code hier nicht beeinflusst. –
Hallo! Hast du in der Konsole erfahren, dass das Timeout aktualisiert wurde? –
Hallo Emmanuel, meine Annahme war falsch - ich habe vorherige Instanzen des Codes gefunden, der mit langen Verzögerungen funktionierte. Das Standardzeitlimit ist 0, d. H. Keines. Ich schaute auf den falschen Teil des Puzzles. –