问题标签 [aspect]
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 - BeanNotOfRequiredTypeException 但实际上是 $Proxy 类型
我需要有关 Spring 和代理问题的帮助。
org.springframework.beans.factory.BeanNotOfRequiredTypeException:名为 'fooAPIService' 的 Bean 必须是 [com.foo.clientapi.service.FooAPIService] 类型,但实际上是 [com.sun.proxy.$Proxy110] 类型
org.springframework.beans.factory.BeanCreationException:创建名为“activityController”的bean时出错:资源依赖注入失败;嵌套异常是 org.springframework.beans.factory.BeanNotOfRequiredTypeException:名为 'fooAPIService' 的 Bean 必须是 [com.foo.clientapi.service.FooAPIService] 类型,但实际上是 [com.sun.proxy.$Proxy110] 类型
Webapp 项目 ->
弹簧上下文
ActivityController.class
另一个项目(微服务)->
FooAPIService.class
Jaxrs 配置:
版本:aspectjweaver:1.6.10 aspectjrt:1.6.11 cglib:2.2 Spring 3.2.2
java - 在struts2-spring2.5 Web应用程序中获取登录用户名
我有一个基于 struts2 和 spring2.5 的 Web 应用程序。它使用了 struts 的 MVC 特性和安全性、依赖注入、spring 的 AOP。
我使用了一个方面来记录操作,它在调用任何方法之前运行。但是我绝对无法登录登录的用户名。我想要的是,每当调用方法以及方法签名和方法参数时,都应该记录用户名。
任何帮助表示赞赏..
java - aspectj 项目中的错误,因为更改了编译级别
我安装 eclipse_4.3、JDK_1.8.0,并为 Aspect 使用 ajdt_2.2.3 库。直到我不改变 Compiler Compliance 级别,默认是 1.4,我的项目是 OK 的。但是当我在我的项目中编写这段代码时:
所以我必须将编译器合规性级别更改为 1.5,但是当我这样做时,我在 Aspect 的第一行收到此错误:
“无法解析类型 java.lang.CharSequence。它是从所需的 .class 文件中间接引用的”
java - 用 AspectJ 注入的方法的切入点
如何为使用 ApsectJ 注入的方法定义切入点?
我已经注入了如下方法,它可以正常工作:
现在我试图定义一个切入点来检测注入方法的执行但它不成功,我尝试了以下方法:
任何帮助,将不胜感激
谢谢!
c# - 如何将 postsharp 方面应用于给定类的子类中定义的方法?
我可以指定 PostSharp 方面将仅应用于给定类的子类的所有公共方法吗?
我的意思是,我已经ClassA
并且希望将其OnMethodBoundaryAspect
仅应用于从ClassA
.
c++ - 如何从c ++(aspectc ++)的一个方面释放或删除函数中的分配对象?
我需要一种从c++方面释放或删除类函数中分配的内存的方法。
让我们想象一下,我有一个名为 A 的类,如下所示:
我必须定义这样的一个方面:
但在 FreeMemory 方面,我无法访问fooObject。我需要一种方法来解决我的问题。有什么帮助吗?
json - 如何在不接触源代码的情况下为方法/构造函数参数添加注释?
我正在尝试使用 jackson 2 将框架对象(无源代码访问)反序列化为 JSON。
我在使用 Javassist 创建的新方法上发现了这个 Add annotation to a parameter但这个解决方案基于 JavaAssist 并且不完全适用:(
根本问题是缺少 DefaultConstructors,可以使用 @JsonCreator 注释和参数的匹配 @JsonProperty 注释来解决。
我设法使用 mixin 类为众多项目子类之一实现了这一点。
然而,为所有具有几乎相同内容的相关对象编写 mixin 类似乎是错误的方法,所以我开始研究方面。
将注释添加到项目层次结构中的类很容易:
但是,我似乎找不到使用 Aspects 向构造函数参数添加注释的方法!Aspectj in Action 以及 google 尚未提供答案。这是可能吗?
java - Spring 方面记录器
我一直在创建基于注释的方面定义,因此创建@LogPerformance
并将其放在createuser()
方法上。在这种情况下,它不会调用方面方法。但是当我将 @LogPerformance 从createuser()
创建()方法移动时,会调用方面方法。为什么 @LogPerformance
不影响 createuser 方法。
java - Spring(Java):在非线性类层次结构中不触发方面
当类层次结构不是线性时,在基接口上定义时不会触发方面。
最有趣的是:将委托实现(参见最后一个代码块)添加到实现的父类时,测试变为绿色(按预期触发了方面)。
问题:为什么它不像示例中描述的那样工作,为什么它与委托实现一起工作?
示例(抱歉,找不到更短的示例):
测试:
方面:
接口:
抽象实现(模板模式):
实现bean:
(如果您有兴趣:测试设置:)
丑陋的解决方法:将此代码段添加到 SpecializedTemplate
那么,为什么需要这种解决方法?
java - 在编译时编织方面不起作用
我使用 Eclipse 开普勒,Java 1.7。我的 pom.xml 的一部分如下。正如我在 Maven 编译期间看到的那样,根本没有关于编织的日志。我也没有任何错误。方面也不起作用。我究竟做错了什么?正如我在一些例子中看到的那样,这个 pom 应该可以工作。我将 AspectJ 工具安装到 Eclipse。
编辑:这是我的方面代码:
我想用我的方面编织的方法:
另外,这里是maven clean compile
输出: