[omniORB] Bugs, bugs ...

Stanislav Ievlev inger@altlinux.ru
Mon, 30 Jul 2001 16:26:46 +0400


This is a multi-part message in MIME format.
--------------060907080200070701000006
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hello friends!
I'm a newbie in omniORB, So I may be only made things below wrong.

1. Why you haven't some usefull *_ptr classes like ObjectId_ptr and Any_ptr?

2. Why do you use ORB as a DynAny factory, and haven't  special 
DynAnyFactory.

3. All *_forany classes are useless 'cause there are not operators 
between Any and *_forany (e.g. >>= and <<=). Why?

4. function orb->create_basic_dyn_any(tc) with tc from create_array_tc() 
go to CORBA::SystemException. Appropriate code applied to this letter.


P.S. However, omniORB is most powerfull and usefull free ORB ;)

----------------------------------------------
With best regards
Stanislav Ievlev

ALT Linux Team.


--------------060907080200070701000006
Content-Type: text/plain;
 name="test.cc"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="test.cc"

#include <iostream>
#include <omniORB3/CORBA.h>

int main(int argc, char** argv)
{
    try {
	CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "omniORB3");
	CORBA::TypeCode_ptr	array_tc=orb->create_array_tc(5,CORBA::_tc_long);
	CORBA::DynAny_ptr	dyn_any=orb->create_basic_dyn_any(array_tc); //don't work
//	CORBA::DynAny_ptr	dyn_any=orb->create_basic_dyn_any(CORBA::_tc_long); //works
    }
    catch(CORBA::SystemException&) {
	cerr << "Caught CORBA::SystemException." << endl;
    }
    catch(CORBA::Exception&) {
	cerr << "Caught CORBA::Exception." << endl;
    }
    catch(omniORB::fatalException& fe) {
	cerr << "Caught omniORB::fatalException:" << endl;
	cerr << "  file: " << fe.file() << endl;
	cerr << "  line: " << fe.line() << endl;
	cerr << "  mesg: " << fe.errmsg() << endl;
    }
    catch(...) {
	cerr << "Caught unknown exception." << endl;
    }
    return 0;
}

--------------060907080200070701000006--