ModalWindow dans un panel
Bonjour à tous,
J'essaye d'afficher un modal à partir d'un panel mais j'ai une erreur, je vous poste mon code ainsi que l'erreur :
Panel appelant le modal :
Java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
public class ValidatePanel extends Panel {
private static final long serialVersionUID = 1L;
private ModalWindow modalValidatePanel;
private String result;
public ValidatePanel(String _id) {
super(_id);
add(createModalValidatePanel());
}
private ModalWindow createModalValidatePanel() {
modalValidatePanel = new ModalWindow("modalValidatePanel");
modalValidatePanel.setPageMapName("Validation d'une version.");
modalValidatePanel.setCookieName("modalValidatePanel");
modalValidatePanel.setPageCreator(new ModalWindow.PageCreator() {
private static final long serialVersionUID = 1L;
public Page createPage() {
return new ValidateVersionModal(ValidatePanel.this, modalValidatePanel);
}
});
modalValidatePanel.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {
private static final long serialVersionUID = 1L;
public void onClose(AjaxRequestTarget target) {
}
});
modalValidatePanel.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() {
private static final long serialVersionUID = 1L;
public boolean onCloseButtonClicked(AjaxRequestTarget target) {
setResult("Modal window 1 - close button");
return true;
}
});
return modalValidatePanel;
}
public String getResult()
{
return result;
}
public void setResult(String result)
{
this.result = result;
}
} |
HTML
Code:
1 2 3 4
|
<wicket:panel>
<div wicket:id="modalValidatePanel"></div>
</wicket:panel> |
Mon Modal :
Java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| public class ValidateVersionModal extends WebPage {
public ValidateVersionModal(final ValidatePanel modalWindowPage, final ModalWindow window) {
add(new AjaxLink<Object>("closeOK") {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
if (modalWindowPage != null)
modalWindowPage.setResult("OK");
window.close(target);
}
});
add(new AjaxLink<Object>("closeCancel") {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
if (modalWindowPage != null)
modalWindowPage.setResult("Cancel");
window.close(target);
}
});
}
} |
HTML
Code:
1 2 3 4 5 6 7 8 9 10 11
| <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd" >
<head>
</head>
<body>
Modal validate
<p>
<a wicket:id="closeOK">OK</a><br/>
<a wicket:id="closeCancel">Cancel</a><br/>
</p>
</body>
</html> |
Et l'erreur .....
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| WicketMessage: Can't instantiate page using constructor public com.mtr.view.HomePage()Root cause:java.lang.NoSuchMethodError: org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow.add(Lorg/apache/wicket/Component;)Lorg/apache/wicket/MarkupContainer;
at org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow.<init>(ModalWindow.java:135)
at com.mtr.view.admin.panel.validate.ValidatePanel.createModalValidatePanel(ValidatePanel.java:80)
at com.mtr.view.admin.panel.validate.ValidatePanel.<init>(ValidatePanel.java:34)
at com.mtr.view.admin.Validate.<init>(Validate.java:24) at com.mtr.view.admin.AdministrationMenu.<init>(AdministrationMenu.java:21)
at com.mtr.view.HomePage.<init>(HomePage.java:43)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.wicket.session.DefaultPageFactory.createPage(DefaultPageFactory.java:192)
at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:57)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.newPage(BookmarkablePageRequestTarget.java:298)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.getPage(BookmarkablePageRequestTarget.java:320)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.processEvents(BookmarkablePageRequestTarget.java:234)
at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)Complete stack:org.apache.wicket.WicketRuntimeException: Can't instantiate page using constructor public com.mtr.view.HomePage()
at org.apache.wicket.session.DefaultPageFactory.createPage(DefaultPageFactory.java:212)
at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:57)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.newPage(BookmarkablePageRequestTarget.java:298)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.getPage(BookmarkablePageRequestTarget.java:320)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.processEvents(BookmarkablePageRequestTarget.java:234)
at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.wicket.session.DefaultPageFactory.createPage(DefaultPageFactory.java:192)
at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:57)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.newPage(BookmarkablePageRequestTarget.java:298)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.getPage(BookmarkablePageRequestTarget.java:320)
at org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.processEvents(BookmarkablePageRequestTarget.java:234)
at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486) |
Quelqu'un à une idée de où provient l'erreur?? Merci