The examples I've seen using filtering on data table uses pojo model object
with property model for the filter state. I don't like to change my model
objects to accept the null-value fields that are needed for the filtering
to work. Instead I use maps with property model. This work fine except for
two problems.

I have to add sub-maps for any sub-objects referred in the filter property.
 That I've fixed. I also get warnings:

  org.apache.wicket.markup.html.form.AbstractTextComponent - Couldn't
resolve model type of
Model:classname=[org.apache.wicket.model.PropertyModel]:nestedModel=[org.apache.wicket.extensions.markup.html.repeater.data.table.filter.FilterStateModel@5fa31d56]:expression=[name]
for [TextField [Component id = filter]], please set the type yourself.

I'm not sure why it needs the property type. It's perfectly correct to
return null when the field do not have a value in the map. However I tried
to set the property object to an empty string and I still get the same
warning. It seems that the PropertyResolver#MapGetSet-class does not
override to getObjectClass()-method even though it should be able to return
a class when the property object is available.

Has anyone else tried this? Am I stretching it a bit with using maps as
filter state for the data table filtering?

Thanks
ThorÅge

Reply via email to