<h:form>
<p:growl id="msgs" showDetail="true" skipDetailIfEqualsSummary="true" />
<p:tagCloud model="#{tagCloudView.model}">
<p:ajax event="select" update="msgs" listener="#{tagCloudView.onSelect}" />
</p:tagCloud>
</h:form>@Named
@RequestScoped
public class TagCloudView {
private TagCloudModel model;
@PostConstruct
public void init() {
model = new DefaultTagCloudModel();
model.addTag(new DefaultTagCloudItem("Transformers", 1));
model.addTag(new DefaultTagCloudItem("RIA", "#", 3));
model.addTag(new DefaultTagCloudItem("AJAX", 2));
model.addTag(new DefaultTagCloudItem("jQuery", "#", 5));
model.addTag(new DefaultTagCloudItem("NextGen", 4));
model.addTag(new DefaultTagCloudItem("JSF 2.0", "#", 2));
model.addTag(new DefaultTagCloudItem("FCB", 5));
model.addTag(new DefaultTagCloudItem("Mobile", 3));
model.addTag(new DefaultTagCloudItem("Themes", "#", 4));
model.addTag(new DefaultTagCloudItem("Rocks", "#", 1));
}
public TagCloudModel getModel() {
return model;
}
public void onSelect(SelectEvent<TagCloudItem> event) {
TagCloudItem item = event.getObject();
FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Item Selected", item.getLabel());
FacesContext.getCurrentInstance().addMessage(null, msg);
}
}