Andreas Benzler | 4 Sep 2008 13:51
Picon
Picon

How to define a const array in idl?

Hello list

I stumbled across problem defining a interface in idl. I would like to
add a constant string array to an idl file. I tried it with a c++ syntax
and similar writings but without success. I would like to do something
like " const string[] str32 = { "String1", "String2" }; " directly in an
idl file. Is this possible at all and if so, what is the correct typing
for that. Any hint is appreciated.

Regards

Andreas
Karel Gardas | 4 Sep 2008 16:37
Favicon

MICO 2.3.13


 Folks,

we are pleased to announce MICO 2.3.13 release. It is available for
download here:

http://mico.org/mico-2.3.13.tar.gz
http://mico.org/mico-2.3.13.zip

The release management has been funded by ESG GmbH. ESG GmbH
has also sponsored development of the new request/connection timeouts
and policy management features including threading related
policies. We would also like to thank all other contributors,
namely Christoph Becker, Zoltan Bordas, Bill Bruns, Darren Frith,
Dan Gogoasa, GradSoft, Patrick Gräbel, Jaakko Kangasharju, Mark
Lindner, Nikolay Logvinov, John McNamara, Sorin Mustaca, Arne Pajunen,
Matthias Ringwald Markus Schaber, Ashish Kumar Sharma, Wolfgang
Wunderlich, and others.

The biggest changes done since MICO 2.3.12 release are:

- merge of MICO Security Level 3 project
- added support for GNU C++ >= 4.1.x, Sun C++ 5.9, Intel C++ 9
  and 10, MS VC++ 8.0 and 9.0
- implement CORBA 3.0 compliant client side policy management
- implement CORBA compliant request timeout feature
  (RelativeRoundtripTimeoutPolicy)
- implement connection binding timeout feature
  (RelativeConnectionBindingTimeoutPolicy)
- implement threading policies
(Continue reading)

Rahul Miglani | 5 Sep 2008 07:53
Favicon

RE: Compiling mico with stlport 5.02 or later

Hi,

As per the documentation and the header files, the compilation process
uses the compilers default settings for includes and libraries. If
ministl is to be used then it has to be specifically included. (In case
of Unix, by using the --enable-mini-stl option with configure script and
in case of Windows there is a pre-processor flag HAVE_MINI_STL which is
commented by default). 

I tried to compile mico on both platforms with the respective procedure
but encountered a lot of errors. Basically there is mismatch in the
definition and usage of various classes (vectors, strings etc.).

Is there something else that has to be done to be able to use ministl? I
will grateful for any help in this regards.

Thanks and Regards,
Rahul Miglani
Sr. Engineer I - R&D
Core Technologies - Enterprise

-----Original Message-----
From: Sorin Mustaca [mailto:msorin <at> gmx.net] 
Sent: Tuesday, August 26, 2008 12:59 AM
To: Rahul Miglani
Cc: mico-devel <at> mico.org
Subject: Re: [mico-devel] Compiling mico with stlport 5.02 or later

This is not very likely to succeed.
The reason is that MICO has its own mini stl (if it can be called like
(Continue reading)

zhi lee | 19 Sep 2008 05:05
Picon

invoke fail when i use TVarVar.inout() as a parameter

the idl file is defined as follows:
 
//start
typedef sequence<octet>   FILE;
 struct FILE_INFO
 {
  FILE      file;
  long      readsize;
 };
boolean LoadFile( ..., inout FILE_INFO file );
//end
 
i used FILE_INFO_var to deliver and get the context of a file.
but when i called the function LoadFild(...), it failed at the client point.
and when i debug and trace where it failed, i found it throwed an exception when corba called invoke.
 
but when i defined idl as follows and use TVarVar.out(), it works well. 
//start
typedef sequence<octet>   FILE;
 struct FILE_INFO
 {
  FILE      file;
  long      readsize;
 };
boolean LoadFile( ..., inout FILE_INFO file );
//end
 
 
I don't know why, and hope someone can help me to solve this problem.
 
 
note: the main purpose of this function is to load file from a server
 
_______________________________________________
Mico-devel mailing list
Mico-devel <at> mico.org
http://www.mico.org/mailman/listinfo/mico-devel
zhi lee | 19 Sep 2008 05:08
Picon

Re: invoke fail when i use TVarVar.inout() as a parameter

I made a mistake in the last mail
it should be "boolean LoadFile( ..., out FILE_INFO file );" in the second idl file

2008/9/19 zhi lee <leezhi.test <at> gmail.com>
the idl file is defined as follows:
 
//start
typedef sequence<octet>   FILE;
 struct FILE_INFO
 {
  FILE      file;
  long      readsize;
 };
boolean LoadFile( ..., inout FILE_INFO file );
//end
 
i used FILE_INFO_var to deliver and get the context of a file.
but when i called the function LoadFild(...), it failed at the client point.
and when i debug and trace where it failed, i found it throwed an exception when corba called invoke.
 
but when i defined idl as follows and use TVarVar.out(), it works well. 
//start
typedef sequence<octet>   FILE;
 struct FILE_INFO
 {
  FILE      file;
  long      readsize;
 };
boolean LoadFile( ..., inout FILE_INFO file );
//end
 
 
I don't know why, and hope someone can help me to solve this problem.
 
 
note: the main purpose of this function is to load file from a server
 

_______________________________________________
Mico-devel mailing list
Mico-devel <at> mico.org
http://www.mico.org/mailman/listinfo/mico-devel
Robert F. Gunion | 19 Sep 2008 16:32
Favicon

Re: Re: invoke fail when i use TVarVar.inout() as a parameter

How are you using the FILE_INFO_var on the client side?  I suspect 
you're doing something like:
FILE_INFO_var fi;
LoadFile(fi);

.. which will fail with the inout parameter because the _var contains a 
null pointer.  Instead, it should be:
FILE_INFO_var fi = new FILE_INFO;
LoadFile(fi);

Hope that helps.

p.s. If I'm interpreting your idl correctly, you don't need FILE_INFO 
because, rather than sending the readsize separately you could use the 
length() method of the FILE sequence var type.  Then again, I don't 
really know what you're using readsize for.

zhi lee wrote:
> I made a mistake in the last mail
> it should be "boolean LoadFile( ..., out FILE_INFO file );" in the 
> second idl file
>
> 2008/9/19 zhi lee <leezhi.test <at> gmail.com <mailto:leezhi.test <at> gmail.com>>
>
>     the idl file is defined as follows:
>      
>     //start
>     typedef sequence<octet>   FILE;
>      struct FILE_INFO
>      {
>       FILE      file;
>       long      readsize;
>      };
>     boolean LoadFile( ..., inout FILE_INFO file );
>     //end
>      
>     i used FILE_INFO_var to deliver and get the context of a file.
>     but when i called the function LoadFild(...), it failed at the
>     client point.
>     and when i debug and trace where it failed, i found it throwed an
>     exception when corba called invoke.
>      
>     but when i defined idl as follows and use TVarVar.out(), it works
>     well. 
>     //start
>     typedef sequence<octet>   FILE;
>      struct FILE_INFO
>      {
>       FILE      file;
>       long      readsize;
>      };
>     boolean LoadFile( ..., inout FILE_INFO file );
>     //end
>      
>      
>     I don't know why, and hope someone can help me to solve this problem.
>      
>      
>     note: the main purpose of this function is to load file from a server
>      
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Mico-devel mailing list
> Mico-devel <at> mico.org
> http://www.mico.org/mailman/listinfo/mico-devel
>   
Attachment (rfgunion.vcf): text/x-vcard, 349 bytes
_______________________________________________
Mico-devel mailing list
Mico-devel <at> mico.org
http://www.mico.org/mailman/listinfo/mico-devel
EBERSOLD André | 23 Sep 2008 13:45
Picon
Favicon

Building mico2.3.13

I tried to compile mico 2.3.13 on FC9 with gcc 4.3.0

just run configure and than make.

I got an error in fast_array.cc
Someone knows where the definition UINT_MAX comes from ?

Kind regards Andre E.

c++  -I../include  -O2  -Wall -Wwrite-strings -fno-strict-aliasing 
-D_REENTRANT -D_GNU_SOURCE   -DPIC -fPIC  -c fast_array.cc -o 
fast_array.pic.o
fast_array.cc:51: error: 'UINT_MAX' was not declared in this scope
make[1]: *** [fast_array.pic.o] Error 1
make[1]: Leaving directory `/home/...../.../mico/orb'
make: *** [system] Error 1
bash-3.2$ grep -r UINT_MAX *
orb/fast_array.cc:const unsigned int MICO::__void_array::__EMPTY = UINT_MAX;
bash-3.2$ pwd
/home/aebersol/Builds/mico
bash-3.2$ c++ --version
c++ (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8)

--

-- 

Andre EBERSOLD - ADIVAL
Senior Software Engineer
tel : 03 90 20 76 60
maito:andre.ebersold <at> adival.com

Alcatel Business System, Illkirch
tel: 03 90 67 62 19       
maito:andre.ebersold <at> alcatel-lucent.fr
Karel Gardas | 23 Sep 2008 14:49
Favicon

Re: Building mico2.3.13

EBERSOLD André wrote:
> I tried to compile mico 2.3.13 on FC9 with gcc 4.3.0
> 
> just run configure and than make.
> 
> I got an error in fast_array.cc
> Someone knows where the definition UINT_MAX comes from ?

It comes from either your C++ compiler header files or from the OS
header files. It depends. On Solaris I do have it defined in
/usr/include/iso/limits_iso.h and also GCC 4.2.3 comes with its own
definition in
/usr/local/gcc-4.2.3/lib/gcc/i386-pc-solaris2.11/4.2.3/include/limits.h

Anyway, GCC team has clean up quite a lot of header files for 4.3.x
release so I guess what was included unnecessarily in previous GCC
releases is not included now hence the compilation failure.

Cheers,
Karel

> 
> Kind regards Andre E.
> 
> 
> c++  -I../include  -O2  -Wall -Wwrite-strings -fno-strict-aliasing
> -D_REENTRANT -D_GNU_SOURCE   -DPIC -fPIC  -c fast_array.cc -o
> fast_array.pic.o
> fast_array.cc:51: error: 'UINT_MAX' was not declared in this scope
> make[1]: *** [fast_array.pic.o] Error 1
> make[1]: Leaving directory `/home/...../.../mico/orb'
> make: *** [system] Error 1
> bash-3.2$ grep -r UINT_MAX *
> orb/fast_array.cc:const unsigned int MICO::__void_array::__EMPTY =
> UINT_MAX;
> bash-3.2$ pwd
> /home/aebersol/Builds/mico
> bash-3.2$ c++ --version
> c++ (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8)
> 

--

-- 
Karel Gardas                  kgardas <at> objectsecurity.com
ObjectSecurity Ltd.           http://www.objectsecurity.com
Vázquez Landa, David | 25 Sep 2008 15:09

Mico Client <-> JacOrb Server

Hi, I'm trying to figure out how to get this working...

Right now I'm stuck because I don't know how should I make the two implementations communicate. I'm running
a JacOrb name service with a filename, just as in the tutorial. The URL for the filename (the one I'd be using
from Mico, I guess) is "file:/c:/gurito/public/jacorb/NS_Ref". Now, I don't know where should I
specify that for Mico to find it. And furthermore, supposing that's already taken care of, how would I
access an object served by JacOrb? 

This is the relevant part of my server:

----------
POA poa = POAHelper.narrow(orb.resolve_initial_references("RootPOA"));
poa.the_POAManager().activate();
org.omg.CORBA.Object o = poa.servant_to_reference(new FinderI());
// Register with the naming service
NamingContextExt nc = NamingContextExtHelper.narrow(orb.resolve_initial_references("NameService"));
nc.bind(nc.to_name("Finder"), o);
----------

Thanks in advance :)

David
Karel Gardas | 25 Sep 2008 15:52
Favicon

Re: Mico Client <-> JacOrb Server


Hi,

if you are already using naming service for the application bootstrap,
than it would be silly not to use it from MICO too. Use standard
-ORBInitRef way to pass JacORB's NS IOR to MICO application.

Cheers,
Karel

Vázquez Landa wrote:
> Hi, I'm trying to figure out how to get this working...
> 
> Right now I'm stuck because I don't know how should I make the two implementations communicate. I'm
running a JacOrb name service with a filename, just as in the tutorial. The URL for the filename (the one I'd
be using from Mico, I guess) is "file:/c:/gurito/public/jacorb/NS_Ref". Now, I don't know where should
I specify that for Mico to find it. And furthermore, supposing that's already taken care of, how would I
access an object served by JacOrb? 
> 
> This is the relevant part of my server:
> 
> ----------
> POA poa = POAHelper.narrow(orb.resolve_initial_references("RootPOA"));
> poa.the_POAManager().activate();
> org.omg.CORBA.Object o = poa.servant_to_reference(new FinderI());
> // Register with the naming service
> NamingContextExt nc = NamingContextExtHelper.narrow(orb.resolve_initial_references("NameService"));
> nc.bind(nc.to_name("Finder"), o);
> ----------
> 
> Thanks in advance :)
> 
> David
> 
> _______________________________________________
> Mico-devel mailing list
> Mico-devel <at> mico.org
> http://www.mico.org/mailman/listinfo/mico-devel
> 

--

-- 
Karel Gardas                  kgardas <at> objectsecurity.com
ObjectSecurity Ltd.           http://www.objectsecurity.com

Gmane