On 7/19/06, Jean-Baptiste Quenot <[EMAIL PROTECTED]> wrote:
> * Igor Vaynberg:
> > this is not a requiremenet of wicket per se but that of the servlet
> > containers. anything you keep in http session must be serializable. since
> > wicket keeps most of its entities in session they must be serializable.
> I understand this for a session because it can be made persistent
> across restarts, but what about Application's metadata:
>   Application.setMetaData(MetaDataKey key, java.io.Serializable object)
> Why do we need Serializable here?

I agree you don't need it for application. However, Application's meta
data reuses the metadata classes that are used for pages and session,
where meta data typically should be serializable.

> BTW I use Application.setMetaData() to pass Spring beans to the
> Page.  Are MetaData suitable for that kind of purpose?

Theoretically, you can use the meta data for any thing your want.
*However*, you typically would not need to use this facility for
concrete applications. If you know what application you're in, you can
directly use the concrete application class for instance. That would
be less work, more strongly typed, and easier to find out what the
application class supports.

The meta data facility is specifically meant for reusable components/
constructs, that need to utilize some page/session/application scoped
message bus, without knowing anything about any concrete application
they function in. We use the application scope once in Wicket (in
class WebPage), where we log a warning when the page has no body
element. We set a meta data bit to ensure we only issue that warning
once a page.

> And about the Wicket-Spring extension, is there a documentation
> available?

It has JavaDocs and an example project, and there is a WIKI page:


Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
Wicket-user mailing list

Reply via email to