代码之家  ›  专栏  ›  技术社区  ›  Pops Atula

有问题的Wicket运行时异常

  •  3
  • Pops Atula  · 技术社区  · 15 年前

    根本原因:

    位于org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:445) 位于org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:90) 位于org.apache.wicket.model.AbstractPropertyModel.getObject(AbstractPropertyModel.java:117) 位于org.apache.wicket.Component.getDefaultModelObject(Component.java:1664) 位于org.apache.wicket.Component$3.compare(Component.java:548) 位于org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168) 位于org.apache.wicket.markup.html.form.upload.FileUploadField.updateModel(FileUploadField.java:100) 位于org.apache.wicket.markup.html.form.form$FormModelUpdateVisitor.component(form.java:225) 位于org.apache.wicket.markup.html.form.FormComponent.visitComponentStorderHelper(FormComponent.java:514) 位于org.apache.wicket.markup.html.form.FormComponent.visitComponentStorder(FormComponent.java:465) 位于org.apache.wicket.markup.html.form.form.process(form.java:984) 位于org.apache.wicket.markup.html.form.form.process(form.java:911) 位于org.apache.wicket.markup.html.form.form.onFormSubmitted(form.java:876) 位于org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:182) 位于org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget.java:73) 位于org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92) 位于org.apache.wicket.RequestCycle.step(RequestCycle.java:1329) 位于org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428) 在org.apache.wicket.RequestCycle.request(RequestCycle.java:545) 位于org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:289) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) 位于org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) 位于org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) 位于org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) 位于org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) 位于org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) 运行(Thread.java:619)

    here ,但我还没有完全能够把那里提出的建议变成解决我的情况的办法。我的类不包含名为DocumentUpload的Java变量,但包含以下内容:

    fuf = new FileUploadField("DocumentUpload");
    
    1 回复  |  直到 4 年前
        1
  •  6
  •   Pops Atula    15 年前

    我在这个问题上花了几个小时,在我向SO发布了关于它的信息20分钟后,我又一次发现了它。修复方法是将上载字段声明转换为提供模型的声明,如下所示:

    fuf = new FileUploadField("DocumentUpload", new Model<FileUpload>());
    

    编辑:原来这与1.3->1.4移徙。根据 migration guide ,

    FileUploadField-现在需要模型