問題タブ [cglib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - CGLIB プロキシ サービスのプロパティのモックが機能しない
Junit テスト内からサービスのプロパティをモックしようとすると、問題が発生します。
結果が期待どおりではないため、fooDao をモックしても効果はありません。サービスと dao の両方のコードは次のとおりです。
ご覧のとおり、実際のサービスは「foo」を返すようになっていますが、テストは dao をモックするため、サービスは「var」を返します。私はそれがCGLIBプロキシ関連のものであることを知っていますが、fooDaoプロパティのセッターを使用せずに機能させる方法を理解できません。どんな助けでも大歓迎です。
よろしくお願いします。
java - CGLIBでプロパティ値を設定する際の例外
新しくバックアップされたデータベースをアタッチした後、例外が発生します。
私のUserクラスには、次のフィールドがあります。
そして、ここを参照する例外は、それが例外を与え始めたものからですか?
java - Google App Engine の HashMap の Cglib Enhancer が Class Not Found 例外をスローする
HashMap のメソッド呼び出しをインターセプトできるように、cglib を使用して HashMap を強化しています。
ローカル コンピューター上で正常に動作し、Eclipse 内で Google Web アプリケーションとして実行した場合も動作します。ただし、サーバーにデプロイすると、「java.lang.NoClassDefFoundError: [Ljava/util/HashMap$Entry;」という例外が発生します。
例外をスローするコード行は次のとおりです。
Eclipse (3.7) 用の最新のプラグインを使用しています。cglib バージョン 2.2 (cglib-nodep-2.2.jar) を使用しています。
編集:これは興味深いです: HashMap から拡張するクラスを作成すると、問題なくそのクラスを拡張できます。たとえば、次のコードは機能します。
また、エンハンサーは TreeMap、HashSet、および TreeSet で機能します:ENDEDIT
スタック トレースは次のとおりです。
原因: java.lang.ClassNotFoundException: java.util.HashMap$Entry ... 35 詳細
java-bytecode-asm - 動的 Java バイトコード操作フレームワークの比較
動的なバイトコードの生成、操作、およびウィービング用のフレームワークがいくつかあります (BCEL、CGLIB、javassist、ASM、MPS)。それらについて知りたいのですが、それらすべてについてすべての詳細を知る時間はあまりないので、一方と他方の長所と短所を示した比較表のようなものと、その説明を見てみたいと思います。どうして。
ここSOで、似たようなことを尋ねる多くの質問を見つけました.答えは通常、「cglibまたはASMを使用できます」、または「javassistはcglibよりも優れています」、または「BCELは古くて死にかけています」または「ASMはX と Y が得られるので最適です。」これらの回答は役に立ちますが、私が望む範囲で質問に完全に答えるわけではなく、それらをより深く比較し、それぞれの長所と短所を示しています。
java - Javassist プロキシの命名ポリシーを変更する
Enhancer を使用して CGLib でプロキシを作成する場合、呼び出し.setNamingPolicy(NamingPolicy n)
てプロキシ クラスの命名規則を CGLib のデフォルト以外のものに変更できます。ProxyFactory を使用するときに Javassist で同様のことを行う方法はありますか?
java - Android の遅延読み込みを実装するための cglib の代替
私は現在、ORM を含む Android 用のフレームワークに取り組んでいます。ORM に遅延読み込みを組み込むことを計画しています。これは、Android の外部では、cglib バイトコード操作フレームワークを使用して実現できます。ただし、cglib は Dalvik と互換性がないため、明らかにこの目的で使用することはできません。
遅延読み込みの実装に役立つ Android 互換の代替手段は何ですか?
java - cglib を直接フィールドのインターセプトに使用できますか?
次のテスト ケースでは、直接フィールド t は CGLIB によってインターセプトされません。それで、CGLIBを使用できますか?
java - Spring AOP: CGLIB プロキシの動作を確認する
「Pro Spring 2.5」を参照しているときに、次のステートメント (193 ページ) に出くわしました。
たとえば、CGLIB プロキシは適切なバイトコードを生成して、推奨されていないメソッドを直接呼び出し、プロキシによって導入されるオーバーヘッドを大幅に削減します。
Spring のソース コードを見て、いくつかの実験を試みましたが、このステートメントを確認できませんでした。それを確認するためにどのような簡単なプログラムを書くことができますか?
spring - CGLIB、Springおよびコンストラクターによるインジェクション
Springのプロキシメカニズムとしてcglibを使用したいと思います。問題は、コンストラクターによって依存関係が注入されているBeanがいくつかあり、これを変更できないことです。CGLIBはそれをあまり好まないようで、そのBeanをインスタンス化することはできません。それを回避する方法はありますか?(たとえば、一部のBeanのcglibプロキシを無効にすることはできますか?またはさらに良いことに、それらのBeanのCGLIBプロキシも使用できますか?)
事前にTx
java - EasyMock モックを作成すると NoSuchMethodError 例外がスローされる
私はモックを作成しました:
そして、次の例外が発生します:
私はそれMockedClass
が存在すると確信しています。この問題の理由は何ですか?