Hi Maik,

Recently we added the following Javadoc to IDirtyDataOwner for the next
release.

If a client side proxy of a component wishes to update the state of its
corresponding server component, it can do that using an
implementation of this interface. This is required when there is a state
change on the client due to user interaction such as window
resizing, button selection state, enabled state, etc. The component's
client side proxy can register an object of the class implementing
this interface with the <code>UISession</code> using
<code>getSession().addDirtyDataOwner()</code>. During the next round-trip
before sending the requests, <code>flushDirtyData()</code> is called on
all <code>IDirtyDataOwner</code>s, wherein they can update
the state of the server-side widget using a call like
<code>updateStateULC("<attributeName>",
getBasicComponent().get<AttributeName>())</code>. The
<code>updateStateULC()</code> calls
are handled and dispatched on the server side component by its
<code>ULCProxyDispatcher</code>.

Please let me know if this is helpful or you need more info.

Thanks and regards,

Janak

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:ulc-developer-
> [EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED]
> Sent: Wednesday, April 02, 2008 7:17 PM
> To: [email protected]
> Subject: [ULC-developer] How to use IDirtyDataOwner
>
> Hi,
>
> i'm trying to understand the concept of the
> IDirtyDataOwner.flushDirtyData() method. There is very little about it
on
> the Extension Guide or the API docs.
>
> My goal is to implement an widget which is a sophisticated HTML editor.
So
> i need to understand how and when to transfer the user input back to the
> server, so that it is available when the next server-round-trip is
> running.
>
> The extension guide does explain how to use the updateStateULC methods
and
> that they are causing seperate server-round-trips (which i want to
avoid)
> when they are 'called outside the context of a flushDirtyData() method
> call'.
>
> The UISession offers the method 'addDirtyDataOwner(dirtyDataOwner)', but
> it is not explained how the dirty detection works or how it is
triggered.
>
> Can anyone clearify this?
>
>
>
> Best regards
> Maik Scheibler
>
> Sächsische Aufbaubank - Förderbank - (SAB)
> Informationstechnologie
> Pirnaische Str. 9
> 01069 Dresden
> Tel.: +49 (351) 4910 - 1352
> mailto:[EMAIL PROTECTED]
>
>
> Sächsische Aufbaubank - Förderbank - Anstalt des öffentlichen Rechts,
> Sitz Dresden,
> Amtsgericht Dresden HRA 5353,
> Ust-IdNr. DE179593934.
>
> _______________________________________________
> ULC-developer mailing list
> [email protected]
> http://lists.canoo.com/mailman/listinfo/ulc-developer

Reply via email to