[omniORB] Problems catching exceptions in clients
Ridgway, Richard (London)
Richard_Ridgway at ml.com
Fri Apr 11 13:18:58 BST 2008
> catch (const MysqlPackage::Mysql::MysqlException::Exception& ex){
> cout << "ERROR: " << ex._name() << endl;
> }
Shouldn't that just be catch (const MysqlPackage::Mysql::MysqlException
& ex)
Is your client calling an idl method that is declared to throw this
exception?
Richard
-----Original Message-----
From: omniorb-list-bounces at omniorb-support.com
[mailto:omniorb-list-bounces at omniorb-support.com] On Behalf Of Clarke
Brunt
Sent: 11 April 2008 12:02
To: omniorb-list at omniorb-support.com
Subject: RE: [omniORB] Problems catching exceptions in clients
evgeni.rojkov at durr.com wrote:
> ... could yout try "throw new
> MysqlPackage::Mysql::MysqlException(...);" ... just try to add this
> "new".
At the risk of my talking nonsense, I don't think that's correct.
If you add "new", then you are throwing a pointer to the exception. For
one thing, you could then have to catch a pointer as well (rather than
catching by value or by reference), but I don't believe that the CORBA
C++ mapping tells you to throw pointers - you are just supposed to throw
the object. So if you _did_ throw a pointer, then omniORB wouldn't
recognise it, and you'd just end up with a generic exception at the
client.
Clarke Brunt
TRAFFICMASTER PLC
UNIT 22 / ST. JOHN'S INNOVATION CENTRE
COWLEY ROAD / CAMBRIDGE / CB4 0WS
T: 01223 422469
F:
E: clarke.brunt at trafficmaster.co.uk
Please consider the environment before printing this email.
--------------------------------------------------------
Trafficmaster PLC is a limited Company registered in England and Wales.
Registered number: 2292714 Registered office: Martell House,
University Way, Cranfield, BEDS. MK43 0TR
This message (and any associated files) is intended only for the use of
omniorb-list at omniorb-support.com and may contain information that is
confidential, subject to copyright or constitutes a trade secret. If you
are not omniorb-list at omniorb-support.com you are hereby notified that
any dissemination, copying or distribution of this message, or files
associated with this message, is strictly prohibited. If you have
received this message in error, please notify us immediately by replying
to the message and deleting it from your computer. Any views or opinions
presented are solely those of the author
clarke.brunt at trafficmaster.co.uk and do not necessarily represent those
of the company.
Warning: Although the company has taken reasonable precautions to ensure
no viruses are present in this email, the company cannot accept
responsibility for any loss or damage arising from the use of this email
or attachments.
--------------------------------------------------------
_______________________________________________
omniORB-list mailing list
omniORB-list at omniorb-support.com
http://www.omniorb-support.com/mailman/listinfo/omniorb-list
--------------------------------------------------------
This message w/attachments (message) may be privileged, confidential or proprietary, and if you are not an intended recipient, please notify the sender, do not use or share it and delete it. Unless specifically indicated, this message is not an offer to sell or a solicitation of any investment products or other financial product or service, an official confirmation of any transaction, or an official statement of Merrill Lynch. Subject to applicable law, Merrill Lynch may monitor, review and retain e-communications (EC) traveling through its networks/systems. The laws of the country of each sender/recipient may impact the handling of EC, and EC may be archived, supervised and produced in countries other than the country in which you are located. This message cannot be guaranteed to be secure or error-free. This message is subject to terms available at the following link: http://www.ml.com/e-communications_terms/. By messaging with Merrill Lynch you consent to the foregoing.
--------------------------------------------------------
More information about the omniORB-list
mailing list