問題タブ [aspects]
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.
java - Springでアノテーションを使用してアスペクトを適用するにはどうすればよいですか?
更新:Spring 2.xアノテーションベースのコントローラーは、パラメーターと戻り値の自由度が増したためにメソッドプロトタイプについて推測できないため、AOPセキュリティにとって恐ろしいことがわかりました。2.xより前では、 handleRequestをインターセプトして、最初のパラメーターがHttpServletRequestであり、戻り値がModelAndViewであることがわかりました。この標準により、すべてのコントローラーに対して簡単なアドバイスを書くことができました。これで、リクエストにマップされたメソッドは何でも受け取り、Strings、ModelAndViewsなどを返すことができます。
元の投稿:Springで実行されているAOPAllianceのMethodInterceptorを実装する一連の既存の側面があります。それらは、インターセプトすることで私のWebアプリケーションにセキュリティを提供します。handleRequest。コントローラのメソッドであり、実行またはログインページへの転送を許可します。
Springの新しいアノテーションベースのコントローラーでは、「handleRequest」メソッドを実装する必要がなくなりました。コントローラのメソッドには、好きな名前を付けることができます。これは私の既存のセキュリティモデルを壊します。だから、私はこれからどのように得るのですか?
...既存のアスペクトを再利用して、アノテーションを使用してコントローラー全体またはコントローラーメソッドに適用できるようにするには?
java - アスペクト指向プログラミングの未来
私は AOP 分野の初心者です。初めて AOP の概念を適用して何かをコーディングしたとき、アスペクトがアプリケーションのクロス カット パターンをどのように排除するかを理解できて感激しました。セキュリティ、ロギング、トランザクション、監査などの分野横断的なパターンを AOP を適用して解決するという考えに圧倒されました。
しかし、私が仕事をしているクライアントに AOP の使用を最初に提案したとき、彼らはそれをサポートしていないと言われました。AOP はより多くのメンテナンスを意味すると言われました。コードが変更された場合、ポイントカットを変更する必要があります。したがって、アスペクトが適用されたコードを変更するたびに、アスペクトを分析、変更、およびテストする必要があるでしょうか?
これについて何を言わなければなりませんか?主流の企業が AOP の広範な使用にまだオープンではないのはなぜですか? AOP の世界はどこへ向かうのか?
c# - AspectF(Fluent Aspect Framework)は、あまり気にせずに使用できるAOPのようなデザインですか?
Omar Al Zabirは、「AOPスタイルのコーディングを行うためのより簡単な方法」を探しています。
彼はAspectFと呼ばれるフレームワークを作成しました。これは、「コードにアスペクトを追加するための流暢で簡単な方法」です。
コンパイル時やランタイムウィービングを行わないため、これは真のAOPではありませんが、AOPと同じ目標を達成しますか?
AspectFの使用例を次に示します。
AspectFの目的をさらに明確にする著者によるいくつかの投稿は次のとおりです。
- 関心の分離のためにアスペクトをコードに入れるAspectFの流暢な方法(ブログ)
- AspectF(グーグルコード)
- よりクリーンで保守可能なコードのアスペクトを追加するAspectFの流暢な方法(CodeProject)
著者によると、AspectFはAOPの代替として設計されているのではなく、「関心の分離を実現し、コードをきれいに保つ」方法であると私は考えています。
いくつかの考え/質問:
- プロジェクトの成長に合わせてこのスタイルのコーディングを使用することについて何か考えはありますか?
- それはスケーラブルなアーキテクチャですか?
パフォーマンスの懸念?- 保守性は、真のAOPソリューションとどのように比較されますか?
aspectj - AspectJのポリモーフィズム
私はAspectJのタイプにディスパッチするためのより良い方法を決定しようとしています。3種類のノードを持つツリーで計算を実行しているとします。次に、簡単なJavaメソッドを記述できます。
また
または、各ノードタイプにメソッドを挿入できます。
どの方法が好ましいのか、そしてその理由は?
security - ページ ソースを変更せずに、IIS から送信されたページ出力をグローバルに変更するにはどうすればよいですか?
最近、私のいくつかのサイトが「ハッキング」されました。誰かが、サイトのすべてのページの下部に JavaScript の行を追加することができました。
サーバーは Windows Server 2003 で、Cold Fusion 8 と MySQL 5.x がインストールされ、実行されています。
各ページのコードを調べると、どのページも変更されていないことがわかります。JavaScript はコード ファイル自体にはありません。これにより、IIS の問題であると思われますが、確信が持てず、IIS 内でこれを実行できるものを見つけることができません。
追加された JavaScript は、ユーザーが Google から来た場合にのみユーザーを別のページにリダイレクトするか、少なくともこのように動作しているように見えます。
誰かがこれをどのように達成し、それを削除することができたかについての助けをいただければ幸いです。
@Jeffrey Hantinのおかげで質問を表現する別の方法
個々のページを変更せずに、IIS からの出力を体系的に変更するにはどうすればよいでしょうか?
編集: もう少しテストしたところ、.cfm ページのみが追加の JavaScript を追加することが示されました。新しい .cfm が追加され、js はそこにありましたが、.html にはありませんでした。
Edit2: 結局、コールドフュージョンの問題であることが判明しました。どういうわけか、ページ OnRequestEnd.cfm がサイトに作成され、その js が追加されました。
.net - PostSharp の代替品はありますか?
難読化/マージされたアセンブリでは機能しないため、PostSharp の使用を放棄する必要があります。少なくとも、それを機能させる方法がわかりません (アセンブリが難読化されている場合、アプリの起動時にクラッシュします)
アプリでいくつかのメソッドをインターセプトする必要があります (元のメソッドの代わりに特別なコードを呼び出す - OnMethodInvocationAspect)
何かアドバイスはありますか?
java - Eclipse でのデバッグ中のアスペクトの回避
私は、ビジネスクラスで定義された多くの側面を持つ大きなプロジェクトに取り組んでいます。ビジネス クラスでコードをデバッグしているときに、アスペクトのコードを入力することは避けたいと思います。そのための解決策はありますか?コンパイルにはコンパイル時のウィービングとmavenを使用しています。
java - Spring 2.5.x でステレオタイプ アノテーションをどのように使用しますか?
Spring 2.5.x に移行すると、(2.0 からの@Repositoryの上に) より多くのステレオタイプ アノテーションが追加されることがわかりました: @Component、@Service、および@Controller。それらをどのように使用しますか?暗黙の Spring サポートに依存していますか、それともカスタム ステレオタイプ固有の機能/側面/機能を定義していますか? それとも、主に Bean のマーキング (コンパイル時、概念など) のためですか?
java - Eclipse for Roo プロジェクトでのオートコンプリート
いくつかのエンティティを作成した Roo プロジェクトがあり、Eclipse でプロジェクトをロードすると正常にロードされますが、インスタンスMyEntity entity
を作成してから書き込むentity.
と、プロパティがまったく取得されません。 (つまり、getMyField) をオートコンプリート リストに追加します。私が書いた場合entity.getMyField()
、それはうまくコンパイルされます。それはアスペクトによって処理されます。アスペクトによって生成された関数のオートコンプリートを有効にするにはどうすればよいですか?
乾杯
ニック
c# - PostSharp on assemblies I don't have source for
In the examples on their website, PostSharp has a demo of intercepting calls in main system assemblies. I have tried a few times to setup and replicate said intercept calls on assemblies I don't have the source code for with no success.
My approach was to simply place the assembly level attribute targeting the namespace and method I wanted to instrument. This has never worked for me.
something like:
[assembly: Trace("MyCategory", AttributeTargetTypes = "My.BusinessLayer.*")]
Am I missing something here? Can I not do a runtime injection of my instrumentation aspect on a assembly if I don't have the source pulled in for it? I thought I could do runtime injections...
Thanks.