the key is in getCheeses... It should be something like private IModel<List<Cheese>> getCheeses()
-- Jeremy Thomerson http://www.wickettraining.com On Thu, Oct 15, 2009 at 4:55 PM, Andrig T. Miller <andrig.t.mil...@gmail.com > wrote: > I have been going through the Wicket in Action book, but using the > 1.4.2 release. I figured the changes where minimal enough I could get > through things. In the Cheese store example I have the following > code: > > > package org.miller.wicket.example; > > import org.apache.wicket.markup.html.basic.Label; > import org.apache.wicket.markup.html.link.Link; > import org.apache.wicket.markup.html.list.ListItem; > import org.apache.wicket.markup.html.list.ListView; > import org.apache.wicket.model.IModel; > > public class Index extends CheesrPage { > > public Index() { > > add(new ListView<Cheese>("cheeses", getCheeses()) { > > private static final long serialVersionUID = > -6160450216067455300L; > > @Override > protected void populateItem(ListItem<Cheese> item) { > > Cheese cheese = (Cheese) getDefaultModelObject(); > > item.add(new Label("name", cheese.getName())); > item.add(new Label("description", > cheese.getDescription())); > item.add(new Label("price", "$" + cheese.getPrice())); > item.add(new Link<Cheese>("add", item.getDefaultModel()) { > > private static final long serialVersionUID = > 3724016761964076585L; > > @Override > public void onClick() { > > Cheese selected = (Cheese) getDefaultModelObject(); > getCart().getCheeses().add(selected); > > } > }); > } > }); > > } > > } > > The line item.add(new Link<Cheese>("add", item.getDefaultModel()) { > ... > > Doesn't compile in Eclipse. It will compile if I remove the <Cheese> > from the Link, but warns about Link being a raw type that should be > parameterized. > > I can get it to compile if I cast the result of item.getDefaultModel > in this way (IModel<Cheese>), but then Eclipse gives me a warning > saying unchecked cast IModel<capture#1-of ?> to IModel<Cheese>. > > What's the right syntax? I'm sure I'm missing something obvious. > > Thanks for any help. > > Andy >