Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从7.*迁移wicket 8.*,AbstractRequestCycleListener上的onRequestHandlerResolved()方法存在问题_Wicket - Fatal编程技术网

从7.*迁移wicket 8.*,AbstractRequestCycleListener上的onRequestHandlerResolved()方法存在问题

从7.*迁移wicket 8.*,AbstractRequestCycleListener上的onRequestHandlerResolved()方法存在问题,wicket,Wicket,当我在IRequestCycleListener方法转换下处理onRequestHandlerResolved()时,我正在处理Wicket 8.*迁移 根据我的代码wicket 7.15.0中的逻辑结构 public class MyRequestCycleListener extends AbstractRequestCycleListener{ //All methods override here @Override public void onRequestHandle

当我在IRequestCycleListener方法转换下处理onRequestHandlerResolved()时,我正在处理Wicket 8.*迁移

根据我的代码wicket 7.15.0中的逻辑结构

public class MyRequestCycleListener extends AbstractRequestCycleListener{
//All methods override here
    @Override
    public void onRequestHandlerResolved(RequestCycle cycle, IRequestHandler handler) {
       if (handler instanceof ListenerInterfaceRequestHandler) {
           ListenerInterfaceRequestHandler requestHandler = (ListenerInterfaceRequestHandler) handler;
           if (requestHandler.getListenerInterface().getListenerInterfaceClass().isAssignableFrom(         IFormSubmitListener.class)) {
                 //here made some login as well as every onSubmit
           }
       }
    }
}
As wicket 8.*更改 AbstractRequestCycleListener类转换为IRequestCycleListener接口 ListenerInterfaceRequestHandler重命名为ListenerRequestHandler 不推荐RequestListenerInterface,并且IFormSubmitListener出错


如何在wicket 8.9.0上将代码转换为迁移?

应该是这样的:

public class MyRequestCycleListener implements IRequestCycleListener{

    @Override
    public void onRequestHandlerResolved(RequestCycle cycle, IRequestHandler handler) {
        if (handler instanceof ListenerRequestHandler) {
             ListenerRequestHandler requestHandler = (ListenerRequestHandler) handler;

            if (requestHandler.getComponent() instanceof Form) {
                  //here made some login as well as every onSubmit
                  Form form = (Form) requestHandler.getComponent();
            }
        }
    }
}
requestHandler.getComponent().isAssignableFrom(Form.class)不可能。wicket 8中正确接受requestHandler.getComponent().getClass().isAssignableFrom(Form.class)。还有我的一个double,您是否可以使用requestHandler.getClass().isAssignableFrom(Form.class)?