Ext-GWT TreeGridは間接的にGWT-RPCコールバックを呼び出しますか?どうして?

StackOverflow https://stackoverflow.com/questions/1202434

  •  05-07-2019
  •  | 
  •  

質問

GWT-RPCを使用して、Ext-GWT TreeGridにサーバーからのデータを入力しています。 4つのコールバックを使用して、6つのTreeGridを作成しています。 onSuccessコールバック関数は行を挿入してTreeGridを変更するため、TreeGridViewは行をレンダリングする必要があります。コールバッククラスはMainPnlSummaryTablesAsyncCallbackと呼ばれます。

何らかの理由で、JSNIを介してTreeGridViewのスクローラーのoffsetHeightを決定する必要がある場合、スタックトレース内のコールバックの別のインスタンスでonSuccessまたはonFailureが呼び出されます。私が遭遇したスタックトレースのコピーは以下です。

これは本当に奇妙ではないですか?なぜこれが起こっているのですか?

FYI Ext-GWT 2.0.1およびGWT 1.7.0を使用しており、ホストモードブラウザーを使用してこれをデバッグしていますが、これはWebモードの問題であることは確かです。

PnlSummaryClientDebug_as10node6 [Java Application]  
com.google.gwt.dev.HostedMode at localhost:3595 
    Thread [main] (Suspended (breakpoint at line 403 in MainPage$MainPnlSummaryTablesAsyncCallback))    
        MainPage$8(MainPage$MainPnlSummaryTablesAsyncCallback).onSuccess(GWTPair<AggregateStringGWTTable,AggregateStringGWTTable>) line: 403    
        MainPage$8(MainPage$MainPnlSummaryTablesAsyncCallback).onSuccess(Object) line: 1    
        RequestCallbackAdapter<T>.onResponseReceived(Request, Response) line: 215   
        Request.fireOnResponseReceivedImpl(RequestCallback) line: 264   
        Request.fireOnResponseReceivedAndCatch(GWT$UncaughtExceptionHandler, RequestCallback) line: 236 
        Request.fireOnResponseReceived(RequestCallback) line: 227   
        NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] [local variables unavailable]    
        NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39  
        DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25  
        Method.invoke(Object, Object...) line: 597  
        MethodAdaptor.invoke(Object, Object...) line: 103   
        IDispatchImpl.callMethod(CompilingClassLoader, Object, Variant[], MethodAdaptor) line: 126  
        IDispatchProxy.invoke(int, int, Variant[]) line: 155    
        IDispatchProxy(IDispatchImpl).Invoke(int, int, int, int, int, int, int, int) line: 294  
        IDispatchProxy(IDispatchImpl).method6(int[]) line: 194  
        COMObject.callback6(int[]) line: 117    
        COM.VtblCall(int, int, int, GUID, int, int, DISPPARAMS, int, EXCEPINFO, int[]) line: not available [native method]  
        IDispatch.Invoke(int, GUID, int, int, DISPPARAMS, int, EXCEPINFO, int[]) line: 64   
        OleAutomation.invoke(int, int, Variant[], int[], Variant) line: 493 
        OleAutomation.invoke(int, Variant[]) line: 417  
        ModuleSpaceIE6.doInvokeOnWindow(OleAutomation, String, Variant[]) line: 68  
        ModuleSpaceIE6.doInvoke(String, Object, Class<?>[], Object[]) line: 153 
        ModuleSpaceIE6(ModuleSpace).invokeNative(String, Object, Class<?>[], Object[]) line: 453    
        ModuleSpaceIE6(ModuleSpace).invokeNativeInt(String, Object, Class<?>[], Object[]) line: 207 
        JavaScriptHost.invokeNativeInt(String, Object, Class<?>[], Object[]) line: 75   
        Element$.getOffsetHeight$(Element) line: not available  
        El.getHeight(boolean) line: 984 
        TreeGridView(BufferView).getVisibleRowCount() line: 313 
        TreeGridView(BufferView).doRender(List<ColumnData>, List<ModelData>, int, int, boolean, boolean) line: 189  
        TreeGridView(BufferView).doRender(List<ColumnData>, List<ModelData>, int, int, boolean) line: 181   
        TreeGridView(GridView).renderRows(int, int) line: 1559  
        TreeGridView(GridView).insertRows(ListStore<ModelData>, int, int, boolean) line: 1242   
        TreeGridView(GridView).onAdd(ListStore<ModelData>, List<ModelData>, int) line: 1293 
        GridView$5.storeAdd(StoreEvent<ModelData>) line: 1179   
        GridView$5(StoreListener<M>).handleEvent(StoreEvent<M>) line: 22    
        GridView$5(StoreListener<M>).handleEvent(BaseEvent) line: 1 
        TreeGrid$2(BaseObservable).callListener(Listener<BaseEvent>, BaseEvent) line: 176   
        TreeGrid$2(BaseObservable).fireEvent(EventType, BaseEvent) line: 96 
        TreeGrid$2(ListStore<M>).insert(List<? extends M>, int, boolean) line: 467  
        TreeGrid$2(ListStore<M>).insert(List<? extends M>, int) line: 266   
        TreeGrid<M>.onAdd(TreeStoreEvent<M>) line: 430  
        TreeGrid$1.storeAdd(StoreEvent<M>) line: 123    
        TreeGrid$1(StoreListener<M>).handleEvent(StoreEvent<M>) line: 22    
        TreeGrid$1(StoreListener<M>).handleEvent(BaseEvent) line: 1 
        TreeStore<M>(BaseObservable).callListener(Listener<BaseEvent>, BaseEvent) line: 176 
        TreeStore<M>(BaseObservable).fireEvent(EventType, BaseEvent) line: 96   
        TreeStore<M>.doInsert(TreeModel, List<TreeModel>, int, boolean, boolean) line: 799  
        TreeStore<M>.insert(List<M>, int, boolean) line: 493    
        TreeStore<M>.add(List<M>, boolean) line: 163    
        TreeStore<M>.add(M, boolean) line: 174  
        PnlClientFactory.populatePnlDataTreeStore(AggregateStringGWTTable, TreeStore<BaseModel>) line: 42   
        MainPage$9(MainPage$MainPnlSummaryTablesAsyncCallback).onSuccess(GWTPair<AggregateStringGWTTable,AggregateStringGWTTable>) line: 403    
        MainPage$9(MainPage$MainPnlSummaryTablesAsyncCallback).onSuccess(Object) line: 1    
        RequestCallbackAdapter<T>.onResponseReceived(Request, Response) line: 215   
        Request.fireOnResponseReceivedImpl(RequestCallback) line: 264   
        Request.fireOnResponseReceivedAndCatch(GWT$UncaughtExceptionHandler, RequestCallback) line: 236 
        Request.fireOnResponseReceived(RequestCallback) line: 227   
        NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]  
        NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39  
        DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25  
        Method.invoke(Object, Object...) line: 597  
        MethodAdaptor.invoke(Object, Object...) line: 103   
        IDispatchImpl.callMethod(CompilingClassLoader, Object, Variant[], MethodAdaptor) line: 126  
        IDispatchProxy.invoke(int, int, Variant[]) line: 155    
        IDispatchProxy(IDispatchImpl).Invoke(int, int, int, int, int, int, int, int) line: 294  
        IDispatchProxy(IDispatchImpl).method6(int[]) line: 194  
        COMObject.callback6(int[]) line: 117    
        OS.DispatchMessageW(MSG) line: not available [native method]    
        OS.DispatchMessage(MSG) line: 1925  
        Display.readAndDispatch() line: 2966    
        HostedMode(SwtHostedModeBase).processEvents() line: 235 
        HostedMode(HostedModeBase).pumpEventLoop() line: 558    
        HostedMode(HostedModeBase).run() line: 405  
        HostedMode.main(String[]) line: 232 
C:\Program Files\Java\jdk1.6.0_06\bin\javaw.exe (Jul 29, 2009 2:11:16 PM)   
役に立ちましたか?

解決

OK、RPC呼び出しが行われているときにサーバーがNullPointerExceptionsをスローしていたようです...それでも、クライアント側のスタックトレースがこのようになった理由がわかりません(2つのように誤解を招くように見えます)スタックトレースが互いにブリードします。)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top