[Twisted-Python] Problem with Jelly

Simon Pickles sipickles at hotmail.com
Sun Apr 27 05:19:56 EDT 2008


Simon Pickles wrote:
> Hi,
>
> I thought I was following the doc 'Passing Complex Types' but am still 
> getting unsecure Jellies.
>
> I've got a file, imported by both pb.Client and pb.Server:
>
> #------------------------------------------------
> #jellyable.gameObject.py
>
> class GameObject:
>    # full of stuff
>   pass
>
> class PortableGameObject(GameObject, pb.Copyable):
>    pass
>
> class GameObjectReceiver(GameObject, pb.RemoteCopy):
>    pass
>
> pb.setUnjellyableForClass(PortableGameObject, GameObjectReceiver)
>
> #------------------------------------------------
>
> The client is trying to send an instance of a PortableGameObject thru 
> PB, but the server spits out:
>
> twisted.spread.jelly.InsecureJelly: Module jellyable.gameObject not 
> allowed (in type jellyable.gameObject.PortableGameObject).
>
>
> Why does it refer to 'Module jellyable.gameObject'? I know I am 
> sending this thru the pipe:
>
> Sat Apr 26 20:06:57 2008 - BROKER: Do Remote Call - target: None, msg: 
> OBJECT_CHANGESECTOR, data: (<jellyable.gameObject.PortableGameObject 
> instance at 0x87bab4c>,)
>
> I remember reading that it is crucial to get the naming right on send 
> and receive. How have I got it wrong?
>
> Thanks
>
> Simon
>
>
Okay, well I think my first issue was I wasn't importing 
jellyable.gameObject into the server.

After doing this, I now get this slightly vague error:

twisted.spread.jelly.InsecureJelly: method

I think this may be because GameObject is a compound class, including 
instance of Mobile, Selectable, Intelligent and Container component 
classes.

Is it possible to send Compound classes? or should I distil my 
GameObject for transportation? (i'd rather not, obviously!)

Thanks

Si

-- 

http://www.squirtual-reality.com
--------------------------------
Linux user #458601 - http://counter.li.org.







More information about the Twisted-Python mailing list