[ace-users] Naming Service problem

Douglas C. Schmidt schmidt at dre.vanderbilt.edu
Wed Sep 19 13:30:48 CDT 2007


Hi Vishnu,

   Thanks for using the PRF!

>    ACE VERSION: 5.5.8

Please upgrade to ACE+TAO+CIAO x.6 (i.e., ACE 5.6, TAO 1.6, and CIAO
0.6), which you can download from

http://download.dre.vanderbilt.edu

under the heading: "Latest Release."

The DOC groups at Washington University, UC Irvine, and Vanderbilt
University only provide "best effort" support for non-sponsors for the
latest release, as described in

http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-bug-process.html

Thus, if you need more "predictable" help for earlier versions of
ACE+TAO, I recommend that you check out

http://www.dre.vanderbilt.edu/support.html

for a list of companies that will provide you with ACE+TAO commercial
support.

>    HOST MACHINE and OPERATING SYSTEM: Windows 2000 & Vista
>
>   THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE [if you
>    use a link to a platform-specific file, simply state which one
>    (unless this isn't used in this case, e.g., with Microsoft Visual
>    C++)]:
>
>    AREA/CLASS/EXAMPLE AFFECTED:
>    CORBA Naming Service
>
>
>    DOES THE PROBLEM AFFECT:
>        COMPILATION? No
>        LINKING? No
>        EXECUTION? YES
>        OTHER (please specify)?
>
>
>    SYNOPSIS:
>[Brief description of the problem]
>
>If I try to create a Name in Naming Service, and set its length more
>than 1 I get exception.
>
>    DESCRIPTION:
>
>I am trying to create a Name of length 2. (more than 1). it compiles
>and links well, but fails at execution time with the following
>exception when bind or rebind is called.
>NotFound (IDL:omg.org/CosNaming/NamingContext/NotFound:1.0)
>
>    REPEAT BY:
>	CORBA::Object_var naming_context_object = orb-
>>resolve_initial_references ("NameService");
>	CosNaming::NamingContext_var root_context =
>	  CosNaming::NamingContext::_narrow (naming_context_object.in ());
>
>	cout<<"\n\tRegistering HelloInterface object with
>NamingService"<<endl;
>	CosNaming::Name name;// = new CosNaming::Name ();
>	name.length (2);
>
>	name[0].id =  CORBA::string_dup ("WellWisher");
>	name[1].id =  CORBA::string_dup ("Hello");
>
>	root_context->bind (name, hello.in ());

>
>It should be possible to create a Name of length more than 1 right?

Sure, but I think you need to do this

   CosNaming::Name name (2);
   
rather than

   CosNaming::Name name;

Please take a look at the Henning and Vinoski book on "Advanced CORBA
Programming with C++" or McHale's "CORBA Explained Simply"
<http://www.ciaranmchale.com/download/corba-explained-simply.pdf> for
more info.

Thanks,
   
   Doug
-- 
Dr. Douglas C. Schmidt                       Professor and Associate Chair
Electrical Engineering and Computer Science  TEL: (615) 343-8197
Vanderbilt University                        WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203                          NET: d.schmidt at vanderbilt.edu



More information about the Ace-users mailing list