Witam,
potrzebowałem dzrewa checkboxów reprezentujących podział administracyjny więc sobie go napisałem
import it.cnr.imaa.essi.lablib.gui.checkboxtree.CheckboxTree;
import java.io.Serializable;
import java.util.List;
import javax.swing.tree.DefaultMutableTreeNode;
/**
*
* @author qbs
*/
public class PaCheckboxTreeBean extends CheckboxTree implements Serializable{
public DefaultMutableTreeNode kraj= null;
public PaCheckboxTreeBean() {
super(new DefaultMutableTreeNode("Polska"));
kraj = (DefaultMutableTreeNode) this.getModel().getRoot();
javax.persistence.EntityManagerFactory emf = javax.persistence.Persistence.createEntityManagerFactory("BazaFirmPU");
javax.persistence.EntityManager em = emf.createEntityManager();
javax.persistence.Query query = em.createNamedQuery("wojewodztwoPowiat");
List<Podzial> lista = query.getResultList();
DefaultMutableTreeNode wojewodztwo = null;
DefaultMutableTreeNode powiat = null;
for (Podzial l : lista) {
if (l.getNazdod().equals("województwo")) {
wojewodztwo = new DefaultMutableTreeNode((l.getNazwa().toLowerCase()));
kraj.add(wojewodztwo);
} else {
powiat = new DefaultMutableTreeNode(l.getNazwa());
wojewodztwo.add(powiat);
}
}
this.expandRow(0);
this.setRootVisible(false);
}
}
gdy chce go dodać do formatki wypluwa
The component cannot be instantied. Please make sure it is a JavaBeans component.
Teraz jakoś go załadowałem robiąc myk: skompilowałem i wstawiłem komponent:
import it.cnr.imaa.essi.lablib.gui.checkboxtree.CheckboxTree;
import java.io.Serializable;
import java.util.List;
import javax.swing.tree.DefaultMutableTreeNode;
/**
*
* @author qbs
*/
public class PaCheckboxTreeBean extends CheckboxTree implements Serializable{
public DefaultMutableTreeNode kraj= null;
public PaCheckboxTreeBean() {
super(new DefaultMutableTreeNode("Polska"));
kraj = (DefaultMutableTreeNode) this.getModel().getRoot();
a później dokleiłem reszte kodu.
Ponieważ aplikacja, którą piszę musi być napisana profesjonalnie mam pytanie co z tym beanem nie tak i czy może się on wysypać jakoś? Podejrzewam, ze to przez odwołanie do bazy, ale z drugiej strony czy da się to jakoś obejść?