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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
<wicket:panel>
<div wicket:id="modalValidatePanel"></div>
</wicket:panel>
Mon Modal :

Java

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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