Persistent Component State

As with pages, individual components may have state that persists between request cycles. This is rare for non-page components, but still possible and useful in special circumstances.

A client that must persist some client state uses its page's changeObserver. It simply posts ObservedChangeEvents with itself (not its page) as the source. In practice, it still simply invokes the fireObservedChange() method.

In addition, the component should implement the interface PageDetachListener, and implement the method pageDetached(), and, within that method, reset all instance variables to default values, just as a page does (in its detach() method).