[omniORB] Problem with case sensitive IDLs

Duncan Grisby duncan at grisby.org
Wed Jan 2 11:53:42 GMT 2008


On Tuesday 1 January, "Morris, Steve (SW/FW - Rehovot)" wrote:

> I still have one compiler error that I cannot see my way round. The
> following code fails because PropertyManagerException is not a type.
> 
>     exception PropertyManagerException
>     {
>         ExceptionCode exceptionCode;
>         wstring why;
>     };
>     typedef sequence<PropertyManagerException> ExceptionList;
> 
> I do not see how I can change this without changing the interface. Any ideas?

Wow, that's incredibly broken for an IDL compiler to accept that. What
ORB is it?

I'm not sure what you can do about that. Is the exception declared in
the raises clause of any operations?  If it's never used as an
exception, it will probably be ok to change it to be a struct.

Otherwise, for most uses you could declare a struct with the same
members as the exception, but a different name, and declare the sequence
to be a sequence of that struct. For most uses of the type, it will just
work. The only place you might get into trouble is if the sequence is
inserted into an Any, in which case its TypeCode could be different.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list