XmlBlaster Logo

REQUIREMENT

client.cpp.tao

XmlBlaster Logo


Type NEW
Priority LOW
Status CLOSED
Topic C++ client can access xmlBlaster with the TAO Corba library
Des
cription

There is support for TAO to access xmlBlaster from CORBA clients.

Support was developed against TAO 1.2.2 and TAO 1.3. There should be no problem with versions prior to this. Make sure to follow the TAO installation instructions. Most of all make, sure to have the ACE_ROOT, TAO_ROOT environment vars set correctly. The ant build file relies on them being there.

Example
CPP

Needed components from TAO for xmlBlaster:

Component Description
TAO windows only When building TAO please be sure to use the %TAO_ROOT%/TAOACE (dsw/sln) project file. You are not required to build all of the sub projects located within this project. To build ALL libraries and executables required by xmlBlaster please select CosNaming as the sub project to build. You will of course need to build both release and debug versions if you should so require. Any deviation from the %TAO_ROOT%/TAOACE project file is likely to cause file linking problems with cpp-tasks enforcing case sensitivity of library file names.
ACE The ACE library is needed by TAO.
TAO The TAO core is needed.
TAO_IDL The TAO IDL compiler needs to be compiled.
apps/gperf/src The TAO IDL compiler needs the gperf tool.
TAO/orbsvcs From the CORBA services only the CosNaming service is needed.
Configure
Property Default / Example Description Implemented
- - - yes

To compile you can use the xmlBlaster/build.xml file.

Please take a copy from xmlBlaster/build.properties into your home directory (it has precedence there) and adjust the path settings to find CORBA and the XML parser. Example:

#------------------------------------------------------------------------------
# C++ UNIX example with ACE+TAO 1.3 using g++ 3.2
corba.product = TAO
CORBACPP_HOME = /opt/ACE_wrappers/TAO
CORBACPP_VER  = 
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# C++ Windows example with ACE+TAO 1.3 using VC++ 7
use-msvc      = 1
corba.product = TAO
CORBACPP_HOME = C:/Dev/ACE_wrappers/TAO
idl.cmd       = C:/Dev/ACE_wrappers/bin/tao_idl.exe
CORBACPP_VER  = 
#------------------------------------------------------------------------------
      

Compile it with ant:

cd xmlBlaster
build -verbose cpp

This creates:
   xmlBlaster\src\c++\tao_build\xmlBlasterClient.dll
and some test clients in
   xmlBlaster\testsuite\src\c++\bin
      

Howto configure/access the TAO Nameservive

This is a cut and paste from the TAO mailing list:

Hi omon
if you turned off the multicast option by defining -m 0 and I think thats
the default
 option. you must tell your client how to obtain the reference for the
naming service.

 first run the naming service with the option
  -orbendpoint iiop://1.2@[hostname]:[portnumber]
 which causes nameservice the listen  the requests at designated port
then run your client with
 -orbinitref
NameService=corbaloc:iiop:1.2@[hostname]:[portnumber]/NameService
 this will add the NameService ior to the orbs' initial reference table .

 then you will be able to resolve to initial reference for your nameservice.
 if you dont give the reference your client try the resolve the reference
with multicast opton
 as last resort which is non standart and likely the fail in certain
situations.

 have look at the readme file at the naming_service folder of your ACE+TAO
distribution
 for further   information.

 Hürcan Solter
   

NOTE: Configuration parameters are specified on command line (-someValue 17) or in the xmlBlaster.properties file (someValue=17). See requirement "util.property" for details.
Columns named Impl tells you if the feature is implemented.
Columns named Hot tells you if the configuration is changeable in hot operation.

Todo

Testsuite is missing.

See http://www.cs.wustl.edu/~schmidt/TAO.html
See http://www.xmlblaster.org/xmlBlaster/doc/doxygen/c++/namespaces.html
See REQ client.cpp
See REQ client.cpp.compile

This page is generated from the requirement XML file xmlBlaster/doc/requirements/client.cpp.tao.xml

Back to overview