You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Chuck Rolke (JIRA)" <ji...@apache.org> on 2014/03/13 22:43:44 UTC

[jira] [Resolved] (QPID-5623) [C++ Messaging Client - amqp1.0] throws qpid::Exception instead of qpid::types::Exception

     [ https://issues.apache.org/jira/browse/QPID-5623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chuck Rolke resolved QPID-5623.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 0.27
         Assignee: Chuck Rolke

Fixed at Committed revision 1577322.


> [C++ Messaging Client - amqp1.0] throws qpid::Exception instead of qpid::types::Exception
> -----------------------------------------------------------------------------------------
>
>                 Key: QPID-5623
>                 URL: https://issues.apache.org/jira/browse/QPID-5623
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Client
>    Affects Versions: 0.27
>         Environment: Windows .NET binding
>            Reporter: Chuck Rolke
>            Assignee: Chuck Rolke
>             Fix For: 0.27
>
>
> Running various client invalid URL tests gets different results on amqp 0-10 vs 1.0.
> Both versions get into Url::parse and throw Url::Invalid();
> Under 0-10 (which works as expected) has
> {noformat}
> void ConnectionImpl::open()
> {
>     qpid::sys::AbsTime start = qpid::sys::now();
>     qpid::sys::ScopedLock<qpid::sys::Semaphore> l(semaphore);
>     try {
>         if (!connection.isOpen()) connect(start);
>     }
>     catch (const types::Exception&) { throw; }
>     catch (const qpid::Exception& e) { throw messaging::ConnectionError(e.what()); }
> }
> {noformat}
> where the Url throw is caught as a qpid::Exception and rethrown as a messaging::ConnectionError.
> Under amqp1.0 the Url::Invalid  bleeds up to the .NET client interface and is not handled correctly.
> Maybe there are two things to fix:
> 1. Make the amqp1.0 client send messaging:: exceptions only.
> 2. Beef up the .NET binding to catch various other exceptions and relay them into the .NET client when possible.
> As is the .NET clients see an exception of InteropServices::SEHUnhandledException which offers no hint of what went wrong.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org