2012-01-20 22 views
0

每次我試圖實現一個modalwindow我得到:檢票:ModalWindow和ClassNotFound的:CompressedResourceReference

拋出java.lang.ClassNotFoundException:org.apache.wicket.request.resource.CompressedResourceReference

我的圖書館中都沒有這個元素。我的依賴是:

<dependency> 
     <groupId>org.apache.wicket</groupId> 
     <artifactId>wicket-core</artifactId> 
     <version>1.5.3</version> 
    </dependency> 

    <!-- DatePicker --> 
    <dependency> 
     <groupId>org.apache.wicket</groupId> 
     <artifactId>wicket-datetime</artifactId> 
     <version>1.5.2</version> 
    </dependency> 


<dependency> 
<groupId>org.apache.wicket</groupId> 
<artifactId>wicket-extensions</artifactId> 
<version>1.5.3</version> 
</dependency> 

€這就是我如何實現我的modalwindow:

import org.apache.wicket.ajax.AbstractAjaxTimerBehavior; 
import org.apache.wicket.ajax.AjaxRequestTarget; 
import org.apache.wicket.ajax.markup.html.AjaxLink; 
import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow; 
import org.apache.wicket.markup.html.WebPage; 
import org.apache.wicket.util.time.Duration; 



public class ModalPanel1 extends WebPage 
{ 
public ModalPanel1(String id) 
{ 
final ModalWindow modalWindow = new ModalWindow("modal"); 

modalWindow.setTitle("Popup"); 
modalWindow.setInitialWidth(400); 
modalWindow.setInitialHeight(400); 
modalWindow.setResizable(true); 
modalWindow.setContent(new AbstractModalClosePanel(modalWindow) 
{ 
    public void onClick(AjaxRequestTarget target) 
    { 
    modalWindow.close(target); 
    } 
}); 
add(modalWindow); 

add(new AjaxLink<Void>("open") 
{ 
    @Override 
    public void onClick(AjaxRequestTarget target) 
    { 
    modalWindow.show(target); 
    } 
}); 

add(new AbstractAjaxTimerBehavior(Duration.seconds(2)) 
{ 
    @Override 
    protected void onTimer(AjaxRequestTarget target) 
    { 
    modalWindow.show(target); 
    stop(); 
    } 
}); 
} 
} 

import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow; 
import org.apache.wicket.markup.html.panel.Panel; 


public abstract class AbstractModalClosePanel extends Panel 
{ 
    public AbstractModalClosePanel(ModalWindow modalWindow) 
    { 
super(modalWindow.getContentId()); 



} 

有沒有舊的進口。

完整的堆棧跟蹤

完整的堆棧:org.apache.wicket.WicketRuntimeException:使用構造的公共com.onespark.wicket.components.tasks.Tasks()'無法實例頁面。可能它不存在,可能它不可見(公開)。在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),位於org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)。 wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)在org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)在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)在org.apache.wicket.request.cycle.RequestCycle $ HandlerExecutor.respond(RequestCycl e.java:750)在org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)在org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252)at org.apache .wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:209)at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:280)at org.apache.wicket.protocol.http.WicketFilter .processRequest(WicketFilter.java:162)在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本機方法)上的java.lang.reflect.InvocationTargetException(位於java.lang.reflect的sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)處)。 Constructor.newInstance(Constructor.java:513)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.apach e.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)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:750)at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)at org.apache.wicket.request.cycle.RequestCycle .execute(RequestCycle.java:252)at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:209)a t org.apache.wicket.protocol.http中的org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:280)。WicketFilter.processRequest(WicketFilter.java:162)java.lang.NoClassDefFoundError:org/apache/wicket/request/resource/CompressedResourceReference at com.onespark.wicket.components.tasks.ModalPanel1。(ModalPanel1.java:16)at com。 (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。在org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)上的org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)中的newPageInstance(DefaultMapperContext.java:103) org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)at org.apache.wicket.request.h在org.apache.wicket.request.handler.RenderPageRequestHandler上的org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)上的andler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)。響應(RenderPageRequestHandler.java:167)在org.apache.wicket.request.cycle.RequestCycle $ HandlerExecutor.respond(RequestCycle.java:750)at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252)org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:209)org.apache.wicket.request .cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:280)在org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)

回答

1

CompressedResourceReference在檢票1.5與其他COMPRE沿着下降ssion的東西。

如果您在自己的代碼中有此參考,則應該使用正常的ResourceReference或其他非壓縮版本。

在早期版本中,它ModalWindow使用,但它不是至少在1.5.3,所以

<dependency> 
    <groupId>org.apache.wicket</groupId> 
    <artifactId>wicket-extensions</artifactId> 
    <version>1.5.3</version> 
</dependency> 

應該有工作。

我會再試一次,並確保你有一個乾淨的更新,所以沒有參考舊的ModalWindow代碼掛起。

在發佈候選版本中可能還有參考文獻,因爲我認爲它在某些版本候選版本中仍然以核心爲核心。

您可能還需要查看更多堆棧跟蹤以縮小對此類的引用範圍。

+0

我編輯了我的問題。在那裏你可以看到,沒有舊的進口。 – user1090145