Dzenan,

The Tree component itself has images (see source pasted below). I don't know why you get a NPE though. What kind of Wicket set up are you using? Do you use the wicket jar from the distribution, or did you build one yourself?

Martijn


public abstract class Tree extends AbstractTree implements TreeModelListener
{
   /** Name of the junction image component; value = 'junctionImage'. */
   public static final String JUNCTION_IMAGE_NAME = "junctionImage";

   /** Name of the node image component; value = 'nodeImage'. */
   public static final String NODE_IMAGE_NAME = "nodeImage";

   /** Blank image. */
   private static final ResourceReference BLANK =
       new StaticResourceReference(Tree.class, "blank.gif");

   /** Minus sign image. */
   private static final ResourceReference MINUS =
       new StaticResourceReference(Tree.class, "minus.gif");

   /** Plus sign image. */
   private static final ResourceReference PLUS =
       new StaticResourceReference(Tree.class, "plus.gif");




Dzenan Ridjanovic wrote:

Hi,

I have a tree without images and I still get the following error:

Exception in thread "main" java.lang.ExceptionInInitializerError
at org.wicket.urls.app.view.category.CategoriesTreeState.main(CategoriesTreeState.java:129)
Caused by: java.lang.NullPointerException
at wicket.markup.html.StaticResourceReference.<init>(StaticResourceReference.java:38)
   at wicket.markup.html.tree.Tree.<clinit>(Tree.java:90)
   ... 1 more

public class CategoriesTreeState {
   private static Log log = LogFactory.getLog(CategoriesTreeState.class);
   private TreeState categoriesTreeState = new TreeState();
     public CategoriesTreeState(Categories categories) {
       TreeModel model = null;
DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("Categories");
       add(rootNode, categories);
       model = new DefaultTreeModel(rootNode);
       categoriesTreeState.setModel(model);
   }
     public TreeState getState() {
       return categoriesTreeState;
   }
private void add(DefaultMutableTreeNode parent, Categories categories) {
       for (Iterator i = categories.iterator(); i.hasNext();) {
           Category category = (Category) i.next();
DefaultMutableTreeNode child = new DefaultMutableTreeNode(category);
           parent.add(child);
           Categories subcategories = category.getSubcategories();
           if (subcategories.size() > 0) {
               add(child, subcategories);
           }
       }
   }
     public static void main(String[] args) {
       try {
           Log4jConfigurator log4jConfigurator = new Log4jConfigurator();
       UrlsDb urlsDb = new UrlsDb();
urlsDb.load(); Categories approvedCategories = urlsDb.getApprovedCategories(); CategoriesTreeState categoriesTreeState = new CategoriesTreeState(approvedCategories);
       CategoriesTree categoriesTree =
new CategoriesTree("categoriesTree", categoriesTreeState.getState());
       }
       catch (Exception e) {
            log.error("Database error: " + e.getMessage());
       }     }
}

public class CategoriesTree extends Tree {
   private static Log log = LogFactory.getLog(CategoriesTree.class);

   public CategoriesTree(String id, TreeState treeState) {
       super(id, treeState);
   }

   protected String getNodeLabel(DefaultMutableTreeNode node) {
       Object userObject = node.getUserObject();
       if (userObject instanceof Category) {
           Category category = (Category) userObject;
           return category.getName();
       }
       return "Categories";
   }
  }

I would appreciate your help.

Dzenan






-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user




-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to