Hello all,
I'm trying to follow the examples given on wicketstuff.org for TabbedPanel
here: http://tinyurl.com/cpzkas

My code compiles fine, but when I run it I get a noclassdeffound error for
AbstractTab. Here's my snippet of code:

import org.apache.wicket.markup.html.WebPage;

import org.apache.wicket.extensions.ajax.markup.html.tabs.*;

import org.apache.wicket.extensions.markup.html.tabs.*;

import org.apache.wicket.markup.html.panel.*;

import org.apache.wicket.model.*;

import java.util.*;


public class MainMenu extends WebPage{

/*Constructor*/

public MainMenu() {

List<ITab> tabs = new ArrayList<ITab>();

tabs.add(new AbstractTab(new Model("first tab")) {

@Override

public Panel getPanel(String panelID) {

return new MyPanel(panelID);

}

});

} // end constructor

and here's the corresponding runtime error:

WicketMessage: Method onFormSubmitted of interface
org.apache.wicket.markup.html.form.IFormSubmitListener targeted at
component [MarkupContainer [Component id = loginForm]] threw an
exception

Root cause:

java.lang.NoClassDefFoundError:
org/apache/wicket/extensions/markup/html/tabs/AbstractTab
     at java.lang.ClassLoader.defineClass1(Native Method)
     at java.lang.ClassLoader.defineClass(ClassLoader.java:675)........

This makes sense, as you can't directly instantiate an abstract class right?
You have to extend it and then implement the subclass. But I am following
the code example as closely as I can, and I still do not understand what I
am doing wrong.



Thanks,
Branden Tanga
Programmer / EHR Systems Engineer

Reply via email to