Xerces und BCB



  • Halli,

    ich hoffe hier hat jemand Erfahrung mit Xerces C++ unter BCB 5.0, ich versuche mittels der XercesDOMParser Klasse zu parsen. Das Compilieren und einbinden von Xerces 2.5 ging problemlos, aber nun bekomme ich eine Exception der Klasse xercesc_2_5::SAXParseException, keine Ahnung so richtig warum, am beste zeige ich mal den Code dazu:

    TMyClass::TMainForm()
    {
      setlocale(LC_ALL,NULL);
      setlocale(LC_NUMERIC,"C");
    
      try
      { XMLPlatformUtils::Initialize();
        InitialisationSuccess=true;
      }
      catch (const XMLException& toCatch)
      { char* message=XMLString::transcode(toCatch.getMessage());
        String ErrorMessage=message;
        ShowMessage("Error during initialization! :\n" + ErrorMessage);
        XMLString::release(&message);
        InitialisationSuccess=false;
      }
    }
    
    bool TMyClass::ParseIt()
    { if (InitialisationSuccess)
      {  XercesDOMParser* parser = new XercesDOMParser();
         parser->setValidationScheme(XercesDOMParser::Val_Always);
         ErrorHandler* errHandler = (ErrorHandler*) new HandlerBase();
         parser->setErrorHandler(errHandler);
         try
         { parser->parse(xmlFile);
         }
         catch (const XMLException& toCatch)
         { char* message = XMLString::transcode(toCatch.getMessage());
            String ErrorMessage=message;
            ShowMessage("Error during XML! :\n" + ErrorMessage);
            XMLString::release(&message);
            delete parser;
            delete errHandler;
            return false;
         }
         catch (const DOMException& toCatch)
         { char* message = XMLString::transcode(toCatch.msg);
           String ErrorMessage=message;
           ShowMessage("Error during DOM! :\n" + ErrorMessage);
           XMLString::release(&message);
           delete parser;
           delete errHandler;
           return false;
         }
         catch (...)
         { ShowMessage("Unexpected Exception!");
           delete parser;
           delete errHandler;
           return false;
         }
         delete parser;
         delete errHandler;
         return true;
      }
      else return false;
    }
    

    In der Zeile parser->parse(xmlFile) bekomme ich die besagt Exception. Hat jeman eine Idee?

    Danke

    OLi



  • Dieser Thread wurde von Moderator/in flenders aus dem Forum Webzeugs in das Forum Borland C++ Builder (VCL/CLX) verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Wäre es nicht sinnvoll(er), sich in der Dokumentation, dem Code oder ggf. beim Hersteller der Bibliothek/Klasse über mögliche Gründe für diese spezielle Exception zu informieren?
    Evt. hilft es ja auch schon, sich mal die komplette Exception-Meldung durchzulesen, natürlich vorausgesetzt, dass da tatsächlich etwas mehr steht als von dir angeführt.

    Mit dem Compiler, also hier dem BCB, hat das mit ziemlicher Sicherheit nicht speziell zu tun.



  • Jansen schrieb:

    Wäre es nicht sinnvoll(er), sich in der Dokumentation, dem Code oder ggf. beim Hersteller der Bibliothek/Klasse über mögliche Gründe für diese spezielle Exception zu informieren?
    Evt. hilft es ja auch schon, sich mal die komplette Exception-Meldung durchzulesen, natürlich vorausgesetzt, dass da tatsächlich etwas mehr steht als von dir angeführt.

    Mit dem Compiler, also hier dem BCB, hat das mit ziemlicher Sicherheit nicht speziell zu tun.

    Viel mehr stand da wirklich nicht in der Exception, die Doku hat sich in der Stelle als ziemlich unübersichtlich gezeigt, aber mittlerweile habe ich den Fehler gefunden.

    Mein Test XML-Dokument war nicht wohlgeformt. Leider bekommt man diese Exception auch wenn das Dokument gar nicht vorhanden ist, so dass ich (leider) erst ziemlich spät auf die Idee kam da nachzusehen. Hätte dort nämlich eine Ausnahme der Klase XMLException erwartet. Nun ja ..

    Eine Frage am Rande, warum ist dieser Thread bei VCL/CLX gelandet, obwohl das mit den beiden Frameworks gar nichts zu tun hatte? Okay Webzeugs fand ich auch ein wenig unpassend aber eine Kategorie wie Bibliotheken o.ä. habe ich nicht gefunden.

    Grüsse OLi



  • olipenz schrieb:

    Eine Frage am Rande, warum ist dieser Thread bei VCL/CLX gelandet, obwohl das mit den beiden Frameworks gar nichts zu tun hatte?

    Kollege flenders war vermutlich grad etwas in Eile und hat deshalb nur auf das Stichwort "BCB" reagiert. 🙂
    Wenn du möchtest verschieben wir das Ganze nachträglich noch nach "Rund um die Programmierung", wo es meiner Meinung nach gleich hingehört hätte.

    PS.
    Zitate bitte auf das Notwendigste beschränken. Danke!



  • Hi,

    okay das Forum habe ich übersehen, werde ich Zukunft genauer hinsehen.

    Jansen schrieb:

    Zitate bitte auf das Notwendigste beschränken. Danke!

    Darauf werde ich auch achten, ganz erhlich.;)

    OLi


Log in to reply