[omniORB] omniORB 4.0.2 CORBA::SystemException

Lars Schouw schouwla at yahoo.com
Thu Oct 23 17:44:27 BST 2003


I am getting a CORBA::SystemException from my client.

In my console I see this output 

omniORB: Configuration file "C:\\OMNIORB.CFG" either does not exist or

is not a

file. No settings read.

omniORB: Distribution date: Thu Aug  7 00:54:21 BST 2003 dgrisby

omniORB: Information: the omniDynamic library is not linked.

omniORB: Creating ref to remote: root<67108864>

 target id      : IDL:omg.org/CORBA/Object:1.0

 most derived id: IDL:YieldCurve:1.0

omniORB: LocateRequest to remote: root<67108864>

omniORB: AsyncInvoker: thread id = 1 has started. Total threads = 1

omniORB: throw giopStream::CommFailure from

giopStream.cc:1061(0,NO,TRANSIENT_Co

nnectFailed)

Caught a CORBA::SystemException.

 

What does that mean? How can I get this to work?

Did I not install omniorb correct? I never ran the samle.reg file.

The simple echo sample works well with all the examples.

I am using omniorb 4.0.2, Visual Studio 6 SP6 and Windows 2K SP4.

 

I made my own version of eg2_clt.cpp that calls another idl interface.

 

idl file 

interface YieldCurve {

     exception Reject{ long Code; string Reason; };

 

     typedef struct s_CrvDef

     {

        ... < removed some code >

     } CrvDef;

 

 

     void getCrvDef(out CrvDef curvedef, in string env, in string

currency) raises (Reject);

};

 

Client source code

int main(int argc, char** argv)

{

  try {

    CORBA::ORB_var orb = CORBA::ORB_init(argc, argv);

 

    if( argc != 2 ) {

      cerr << "usage:  eg2_clt <object reference>" << endl;

      return 1;

    }

 

    CORBA::Object_var obj = orb->string_to_object(argv[1]);

    YieldCurve_var yieldcurveref = YieldCurve::_narrow(obj);

    if( CORBA::is_nil(yieldcurveref) ) {

      cerr << "Can't narrow reference to type YieldCurve (or it was

nil)." << endl;

      return 1;

    }

 

 YieldCurve::CrvDef* pCrvDef = NULL;

 // CORBA::String_var env = "tokreval";

 // CORBA::String_var currency = "JPY";

 try {

// I GET AN EXCEPTION HERE

  yieldcurveref->getCrvDef(pCrvDef, "tokreval", "JPY");

 }

 catch(YieldCurve::Reject& ex_reject) {

      cerr << "reject exception while calling the getCrvDef method" <<

endl;

      return 1;

    }

 

    orb->destroy();

  }

  catch(CORBA::COMM_FAILURE& ex) {

    cerr << "Caught system exception COMM_FAILURE -- unable to contact

the "

         << "object." << endl;

  }

  catch(CORBA::SystemException&) {

// THE EXCEPTION IS caught here

    cerr << "Caught a 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;

}

 

Preprocessor defines:

WIN32,_DEBUG,_CONSOLE,_MBCS,__WIN32__,_WIN32_WINNT=0x0400,__x86__,__NT__,__OSVERSION__=4

 

I linked with these libs:

omniORB402_rtd.lib omnithread30_rtd.lib msvcstubd.lib kernel32.lib

user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib

shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib

kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib

advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib

odbccp32.lib

 

Ignoring this lib: LIBCMTD

 

additional input path: C:\omniorb\omniORB-4.0.2\lib\x86_win32

I also tried out the same on VC7.1 with my own omniorb build.
I also tried on Solaris 8 with gcc 3.3.2 with my own build.
Both give me the the same exception.

The server is running under Linux.

note. cross-post from comp.lang.java.corba

Regards

Lars Schouw

 



---------------------------------
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20031023/c16e525f/attachment.htm


More information about the omniORB-list mailing list