Hi,

I have a client application on Suse Linux Enterprise 8.1 (Service Pack 3) - a g++ 3.2.2/glibc 2.2 environment. I have built axis and it's dependents in this environment.

When an HTTPTransportException is generated, client calling code is not able to catch the exception - at least not in this environment even though I have:

try {
        stub->invoke()
}
catch (AxisException& e)
{
        printf("AxisException: %s\n", e.what());
}

the HTTPTransportException is not caught.

I'm not sure where the bug is. Is it because my client code can see no declaration or definition of HTTPTransportException and therefore when my code is compiled it has no way of knowing that HTTPTransportException is a sub-class of AxisException in which case this could be an Axis C++ bug (only AxisExceptions should be propagated - not their sub-classes) or a compiler bug. Or is this a linker or C++ runtime bug such that when the stack is unwound it should be known that the thrown HTTPTransportException matches my catch statement.

Is anyone else seeing this behaviour? Is anyone else seeing HTTPTransportException's successfully caught by client code at all? On Linux? On other platforms?

Thanks,

Tim
--
IBM Tivoli Access Manager Development
Gold Coast Development Lab, Australia
+61-7-5552-4001 phone
+61-7-5571-0420 fax

Reply via email to