2

Jersey Working with AspectJ (From Spring) を手に入れた人はいますか?

私の例では、java/groovy に jersey クラスがあります。

@Component
@Path("/resource")
class Resource{

    @Autowired
    ResourceAccess resourceAccess 

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    public String getResource(@QueryParam("name") String name){
        def res= resourceAccess.getResource(name)
        return res
    }

...
}

それは問題なく動作し、resourceAccess は Spring によって注入され、/resource?name=test は test という名前のリソースを返します

しかし、ゲームに AspectJ (AOP) を導入したい場合、resourceAccess オブジェクトはもう注入されず、アドバイスも実行されません。

applicationContext.xml に追加して、アスペクトを作成しました。

@Aspect
@Component
public class MyAspect{
    static final Logger logger = LoggerFactory.getLogger(MyAspect.class);

    @Before("execution(* com.test.Resource.getResource(..))")
    public void logBefore(JoinPoint joinPoint) {
        logger.debug("logBefore() is running!");
    }
}

備考: アドバイスのポイントカットを変更して別のものをターゲットにすると、再び正常に動作します。

誰かがその問題について私を助けることができますか?

4

0 に答える 0