Roughly what I'm doing is:
class TypeA{}
class TypeAModel extends LoadableDetachableModel< List<TypeA>> {
public List<TypeA> load(){
... do the load ...
return ...
}
}
TypeAModel model = new TypeAModel();
DropDownChoice< TypeA> ddc = new DropDownChoice<TypeA>("id", model );
which gets complained about... in this case the generic def is
DropDownChoice<List<? extends T>>
I think the problem is that the generic def of the class should
actually be DropDownChoice<List<T>> because you are already
identifying the type when you create a new instance.
Now... my generics are a bit hazy at this level, because I can
understand why it was done that way... does anyone with more generics
experience know what it should be? Is this a bug that needs filing?
- Brill
On 26-Feb-09, at 6:03 PM, Kaspar Fischer wrote:
On 26.02.2009, at 22:52, Brill Pappin wrote:
For some reason the DropDownChoice component doesn't have the same
generics as ListView and it will not accept a model that listview
will, despite its saying that it will accept an IModel.
Is anyone else having that sort of trouble with DropDownChoice?
- Brill
Can you give us more information on what exactly is not working for
you?
DropDownChoice indeed does accept a model, see for instance the
example in the class description at
http://wicket.apache.org/docs/1.4/org/apache/wicket/markup/html/form/DropDownChoice.html
This works for me.
Kaspar
--
<!-- HTML: -->
<select wicket:id="site">
<option>site 1</option>
<option>site 2</option>
</select>
<ul>
<li wicket:id="site2"><wicket:container wicket:id="sitename"/></li>
</ul>
// Code
List SITES = Arrays.asList(new String[] {
"The Server Side", "Java Lobby", "Java.Net"
});
form.add(new DropDownChoice("site", SITES));
form.add(new ListView("site2", SITES)
{
@Override
protected void populateItem(ListItem item)
{
item.add(new Label("sitename", item.getModel()));
}
});
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]