The VisiBroker ORB throws this exception if an invalid Object_ptr is passed as an in argument; for example, if a nil reference is passed.
An attempt may have been made to send a NULL pointer where the IDL to C++ language mapping requires an initialized C++ object to be sent. For example, attempting to return NULL as a return value or out parameter from a method that should be returning a sequence will throw this exception. In this case a new sequence (probably of length 0) should be returned instead. The types which cannot be sent with the C++ NULL value include Any, Context, struct, or sequence.
An attempt may have been made to insert a nil object reference into an Any.
An attempt was made to send a value that is out of range for an enumerated data type.
An attempt may have been made to construct a TypeCode with an invalid kind value.
Using the DII and one way method invocations, an OUT argument may have been specified. An interface repository throws this exception if an argument passed into an IR object's operation conflicts with its existing settings. See the compiler errors for more information.
A new connection request may have failed due to resource limits on the client or server machine (the maximum number of connections has been reached).
When COMM_FAILURES occur due to system exceptions, the system error number is set in the minor code of the COMM_FAILURE. Check the minor code against the system-specific error numbers (for example, in the include/sys/errno.h or msdev\include\winerror.h files).