AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi SOAP - XE8 - Exception in iOS Clients
Thema durchsuchen
Ansicht
Themen-Optionen

SOAP - XE8 - Exception in iOS Clients

Ein Thema von weisswe · begonnen am 16. Jul 2015 · letzter Beitrag vom 20. Jul 2015
Antwort Antwort
weisswe
(Gast)

n/a Beiträge
 
#1

SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 09:31
Hallo!

Ich habe eine iOS Anwendung die zur Steuerung einer SPS verwendet wird.
Zur Kommunikation nutze ich SOAP / Webservice.
Die Anwendung läuft auf 8 iPads und auch normallerweise ohne Probleme.
Nun haben wir sie beim Kunden installiert - jetzt stellt sich heraus, dass zu einem nicht definierten Zeitpunkt eine Exception auftritt.
Diese ich auch zu unterschiedlichen Zeitpunkten. Hab eine Netzwerkanalyse gemacht, um zu testen, ob es stabil ist -> keine Probleme.
In meiner App habe ich auch alle Exceptions abgefangen -> glaubte ich zumindet.
Jedoch trat diese Exception "irgendwo" anders aus. Also habe ich auch eine Application.OnException procedur implementiert, die den Fehler fängt.

Der Fehler tritt auch am Wochenende auf, wo keine Benutzerinteraktion stattfindet.
Das Programm liest aber alle 10 Sekunden den Status der Steuerung -> hier MUSS also der Fehler liegen.
Wie gesagt, habe überall eine TRY EXCEPT eingenaut -> ich glaube das der Fehler beim Aufruf des Webservices auftriff:
Delphi-Quellcode:
try
   if (TcWebService <> nil) then
      TcWebService.ReadState(sNetID, iPort, adsState, deviceState); // <-- hier "MACHMAL" (1-3x pro Tag) Application.OnException
except
   // wird NIE aufgerufen -> dennoch Exception in Application.OnException...
Die Frage ist WARUM der Fehler auftritt -> nach ca. 3 Zyklen (3x10 Sekunden) ist die Exception wieder weg und die Steuerung funktioniert auch.
Die Exception ist an irgendeiner Speicheradresse -> also nicht wirklich nachzuvollziehen.

Es siehst so aus als würde der Request irgendwie ins "Nirvana" gehen.
Komisch ist nur, das sich der gleiche Aufruf nach ca. 3 Zyklen wieder funktioniert.

Hat jemand von euch ähnliche Erfahrungen gemacht?

Grüße,
Werner
  Mit Zitat antworten Zitat
kretabiker

Registriert seit: 10. Mär 2005
Ort: Bargteheide
183 Beiträge
 
Delphi 12 Athens
 
#2

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 10:12
Ich weiß nicht, ob meine und deine Probleme zusammenhängen, aber ich habe auch ungewöhnliche Fehlermeldungen gehabt beim Abfragen eines Webservices unter XE8, nachdem ich von XE3 umgestellt habe - siehe diesen Thread:

http://www.delphipraxis.net/185610-s...rt-fehler.html

Der Fehler trat nur unter einer bestimmten Konfiguration auf - OS Win2003 R2 Server -, sonst lief es. In der SOAP-Implementierung in XE8 - vielleicht auch schon frühere Versionen - stecken einige Bugs, insbesondere was die Auswertung von Fehlercodes der WinInet-Funktionen angeht. Vielleicht hilft es, da einen Blick hineinzuwerfen, auch wenn du im iOS-Bereich unterwegs bist. Mir hat dabei das RemoteDebugging mit PAServer sehr geholfen, den Fehler einzugrenzen - ein Tip aus dem genannten Thread.
Udo Treichel
  Mit Zitat antworten Zitat
weisswe
(Gast)

n/a Beiträge
 
#3

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 10:32
Hallo Udo!

Deinen Thread hab ich gelesen - Unterschied ist es ja prinzipiell mit der Konfiguration funktioniert (Win 7 + XE 8.1),
nur MANCHMAL Aussetzer hat.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 12:05
Sicher das das Netzwerk sich nicht "verschluckt"?

Mit welcher Delphi Version hat Du den WSDL Import gemacht?

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 12:19
Du sagst uns nicht, was für eine Exception denn geworfen wird.

Und es ist immer ratsam, alle Exceptions zu fangen, damit man die bloss nicht sieht, denn Exceptions sind ganz böse und sollten daher immer so
Delphi-Quellcode:
try
  // hier was machen
except
end;
auf Teufel komm raus vermieden/unterdrückt werden.

Nicht auszudenken, wenn man plötzlich eine aussagekräftige Exception-Meldung auf dem Bildschirm hat ...
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 12:24
Gibt es denn unter iOS keinen Stacktrace den man sich im Exception-Fall loggen kann?
  Mit Zitat antworten Zitat
weisswe
(Gast)

n/a Beiträge
 
#7

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 16. Jul 2015, 13:50
@Maverick: ja, ganz sicher - Netzwerk läuft extrem stabil (medizinische Einrichtung), WSDL Import Delphi XE8 Enterprise
@Sir Rufo: hatte ja vorher die Excelption Medlung am Screen
->
Code:
"Fehler - Zugriffsverletzung bei Adresse 00B64D42 beim Zugriff auf Adresse 00000000"
.
Das ist alles was ich hab.
Darum habe ich ja die try exception Blöcke eingebaut, um den Fehler zu lokalisieren.
Bin nicht jedem Tag beim Kunden darum wollte ich jetzt ein paar Logging Funktion einbauen bevor ich die neue iOS Version einspiele.
Da der Fehler in genau einer Codezeile auftreten kann (siehe erstes Posting) wollte ich im Forum nachfragen, ob jemand schon ähnliche Probleme mit Webservices hatte.

Das System steuert das Licht in einer medizinischen Einrichtung - wenn immer die "schönen Popup-Fenster" auftauchen, sitzt der Patient im Dunkeln, da die Meldungen ja alle 10 Sekunden kommen (für einen gewissen Zeitraum)..

Grüße,
Werner
  Mit Zitat antworten Zitat
weisswe
(Gast)

n/a Beiträge
 
#8

AW: SOAP - XE8 - Exception in iOS Clients

  Alt 20. Jul 2015, 11:26
Um den Fehler bei den Langzeitests einzugrenzen, hab ich jetzt auch die Application Events mitgeloggt.
Dabei hat sich herausgestellt, das ich den "Low memory" event bekomme.
Also im Timer ruf ich alle 10 Sekunden das Webservice auf.
Muss ich da etwas freigeben oder hab ich sonst etwas vergessen??
Oder gibt iOS nach ein paar Stunden den App Speicher automatisch frei (Optimierung)??
Bin gerade etwas ratlos...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz