[omniORB] Passing a Sequence from Python to C++

entonh at gmx.de entonh at gmx.de
Tue Feb 19 07:35:10 GMT 2008


Hello,

when I'm using this:
Try using the following instead:
>    list_all = []
>    list_all.append
> (idlfile.param("1",CORBA.Any(CORBA.TypeCode(ParSeq),list1)))
>    list_all.append
> (idlfile.param("2",CORBA.Any(CORBA.TypeCode(ParSeq),list2)))
>    ...
>    obj.init(CORBA.Any((CORBA.TypeCode(ParSeq),list_all)))

I'm getting the following error:
TypeError: Argument must be CORBA class or repository id. 

What does this mean?

Greeting,
EntonH


-------- Original-Nachricht --------
> Datum: Mon, 18 Feb 2008 19:36:39 +0800
> Von: "Gideon Guillen" <gideong at gmail.com>
> An: omniorb-list at omniorb-support.com
> Betreff: Re: [omniORB] Passing a Sequence from Python to C++

> On 2/18/08, EntonH <entonh at gmx.de> wrote:
> > can't someone give me an advice how to do it? :o(
> > I still get the BAD_PARAM WronPythonType error... :o(
> [snipped]
> > typedef sequence param ParSeq;
> > ....
> > list_all =  []
> > list_all.append (idlfile.param("1",CORBA.Any(CORBA._tc_any,list1)))
> > list_all.append (idlfile.param("2",CORBA.Any(CORBA._tc_any,list2)))
> 
> You can only use the primitive types and types that were defined on
> your IDL on the "any" type.
> 
> Try using the following instead:
>    list_all = []
>    list_all.append
> (idlfile.param("1",CORBA.Any(CORBA.TypeCode(ParSeq),list1)))
>    list_all.append
> (idlfile.param("2",CORBA.Any(CORBA.TypeCode(ParSeq),list2)))
>    ...
>    obj.init(CORBA.Any((CORBA.TypeCode(ParSeq),list_all)))
> 
> -- 
> Gideon N. Guillen
> gideong at gmail.com
> 
> _______________________________________________
> omniORB-list mailing list
> omniORB-list at omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list

-- 
Psst! Geheimtipp: Online Games kostenlos spielen bei den GMX Free Games! 
http://games.entertainment.web.de/de/entertainment/games/free



More information about the omniORB-list mailing list