ClassCastException $ Proxy не может быть приведен к использованию aop

Я использовал Spring для создания объектов с помощью бобов. Теперь я попытался использовать aop для создания того же объекта, и я получаю, что $ Proxy не может быть приведен к исключению SaleRoom.

предыдущий xml был:









И я использовал следующий код для создания продаж:

    ApplicationContext context = new FileSystemXmlApplicationContext(SalesManager.getSalesSourceFile());
    SaleRoom saleRoom;
    List salesNames = new LinkedList();
    List allSales = new LinkedList();

    // Get all sales id's for beans
    NodeList salesNodeList = salesDoc.getElementsByTagName("bean");

    for (int i = 0; i < salesNodeList.getLength(); i++) {
        Node nNode = salesNodeList.item(i);
        salesNames.add(((Element) nNode).getAttribute("id").toString());
    }

    for (String saleName : salesNames) {
        if(saleName.contains("sale")) {
            saleRoom = (SaleRoom) context.getBean(saleName);
            allSales.add(saleRoom);
        }
    }

    return allSales;

Это новый XML:




    
        
    
    

    
        
        
    

Класс ведения журнала Aspect: I '

@Aspect
public class LogSettersCalls {
   @Pointcut("execution(void set*(*))")
    public void setMethod() {}

    @Before("setMethod()")
    public void logSetterCall(JoinPoint theJoinPoint) {
        String methodName = theJoinPoint.getSignature().getName();
        Object newValue = theJoinPoint.getArgs()[0];
        Object theObject = theJoinPoint.getTarget();
        System.out.println("The method " + methodName + " is called on object " 
                + theObject + " with the value " + newValue);
    }
}

используя тот же код для создания bean-компонентов через aop. и я получаю исключение в теме "главный" java.lang.ClassCastException: $ Proxy11 не может быть приведен к application.common.entities.SaleRoom

Строка, которая выдает исключение: saleRoom = (SaleRoom) context.getBean (saleName);

Любая помощь будет оценена. Благодарю.

Ответы на вопрос(1)

Ваш ответ на вопрос