package org.me.addressbook; import java.util.List; import org.rapidbeans.core.basic.RapidBean; import org.rapidbeans.datasource.Document; import org.rapidbeans.presentation.Application; import org.rapidbeans.presentation.ApplicationManager; import org.rapidbeans.service.Action; public class DoSomethingAction extends Action { @SuppressWarnings("unchecked") @Override public void execute() { final Application app = ApplicationManager.getApplication(); final Document doc = app.getActiveDocument(); final StringBuffer sb = new StringBuffer(); for (final RapidBean bean : doc.findBeansByQuery("org.me.addressbook.Person")) { sb.append("Person: "); sb.append(bean.getPropValue("lastname")); sb.append(", "); sb.append(bean.getPropValue("firstname")); sb.append(", groups: "); final List<RapidBean> groups = (List<RapidBean>) bean.getPropValue("groups"); for (int i = 0; i < groups.size(); i++) { if (i > 0) { sb.append(", "); } sb.append(groups.get(i).getPropValue("name")); } sb.append('\n'); } app.messageInfo(sb.toString(), "Address List Report"); } }