AOP-ProceedingJoinPoint的getTarget()值为" null"

2020-09-22 22:36发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我已经使用Sprin...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我已经使用Spring AOP 覆盖了" OrderPromotion" jalo类的" getOrderSubtotalAfterDiscounts()"方法。 我的Aspect类正在被调用,但是当我尝试获取" pjp.getTarget()"时,它给出了 null 值。 在下面附加aop.xml和Aspect类。

aop.xml:

  
       
           
           
       
       <方面>
           
       
   

  

方面的课程:

  @Aspect
  公共类SolsticeOrderPromotion
  {
      私有静态最终Logger LOG = Logger.getLogger(SolsticeOrderPromotion.class);
 
      @Pointcut("执行(受保护* de.hybris.platform.promotions.jalo.OrderPromotion.getOrderSubtotalAfterDiscounts(..))")
      公共无效getOrderSubtotalAfterDiscounts()
      {
      }
 
      @Around(" getOrderSubtotalAfterDiscounts()")
      公共对象getOrderSubtotalAfterDiscounts(final ProceedingJoinPoint pjp)抛出Throwable
      {
          LOG.info(" ############# SolsticeOrderPromotion正在评估############));
          最终对象输出= pjp.proceed();
          最后的SessionContext ctx =(SessionContext)pjp.getArgs()[0];
          最终的AbstractOrder订单=(AbstractOrder)pjp.getArgs()[1];
 
          final OrderPromotion orderPromotion =(OrderPromotion)pjp.getTarget();
          如果(orderPromotion!= null)
          {
              最后的double orderSubtotalAfterDiscounts = getOrderSubtotalWithoutDiscountedProducts(ctx,order,orderPromotion);
              返回orderSubtotalAfterDiscounts;
          }
          返回输出;
      }

  

我做错了什么吗?

谢谢。