TableWidget: send rows to client

Hi all,
I’m writing a new widget (using Vaadin 7) which is, more or less, a table. I have many doubts:

  • Should i use the Shared state to send rows to client ? or RPC ?

  • When the shared State is marked as dirty is re trasmitted entirely? Is it serialized ?
    If i have multiple field of type Person (which is a bean), eg: Friend, Parent, fiancee, ecc… (forgive the parent-fiancee…) and all share the same Person object, will vaadin trasmit the object just once or a copy for each field ?

  • (i’m using gwt-dnd for drag and drop) if the user drag and drop a component: should the client accept the movement, ask the server and in case revert it, or reject the change, ask the server and wait for a server command to move the component ?

thanks in advance.