1

This time I have problem on putting DatePicker on my wicket Page.

My code is follows:

public class StateDB extends BasePage {
    private Date date = new Date();
    public StateDB() {
        Form form = new Form("form");
        DateTextField birthDate = new DateTextField("birthDate", new PropertyModel<Date>(
                this, "date"), new StyleDateConverter("S-", true));
        PickDate datePicker = new PickDate();
        datePicker.setShowOnFieldClick(true);
        datePicker.setAutoHide(true);
        birthDate.add(datePicker);
        form.add(birthDate);  
        add(form);
    }
}

When I run it on server and link to this page I'm getting Exception:

Last cause: org.apache.wicket.markup.head.HeaderItem
WicketMessage: Can't instantiate page using constructor 'public kz.company.myPackage.controller.StateDB()'. Might be it doesn't exist, may be it is not visible (public).

But as you can see constructor of my class is public

public StateDB() {

There is stacktrace

Complete stack:

org.apache.wicket.WicketRuntimeException: Can't instantiate page using constructor 'public kz.company.myPackage.controller.StateDB()'. Might be it doesn't exist, may be it is not visible (public).
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:196)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:68)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)

java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:177)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:68)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)

java.lang.NoClassDefFoundError: org/apache/wicket/markup/head/HeaderItem
     at kz.company.myPackage.controller.StateDB.<init>(StateDB.java:72)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:177)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:68)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)
Aybek Kokanbekov
  • 575
  • 2
  • 8
  • 29
  • Is this stack trace complete? see your console log in IDE, may be there is more significant explanation. This is too broad exception, that you have posted. – Michael Zhavzharov Aug 22 '14 at 10:52
  • I've added complete StackTrace – Aybek Kokanbekov Aug 22 '14 at 13:21
  • 1
    Ok, the real exception is: java.lang.NoClassDefFoundError: org/apache/wicket/markup/head/HeaderItem. It means, that your classloader could not find this class. It's about your project settings. There is a lot of information about this problem in google, for examlpe check this: http://stackoverflow.com/a/17974068/2168532 – Michael Zhavzharov Aug 22 '14 at 13:53

1 Answers1

0

Something is going wrong in you constructor. When an exception is throw in the constructor, Wicket catches it an displays that message. Does the field 'date' have a getter and setter? These are required for the PropertyModel in DateTextField.

Martin
  • 1,274
  • 12
  • 23