fino é o controle de granulação aspectj-autoproxy possível na Primavera?
Pergunta
Se eu apenas adicionar
Eu tentei usar o aop: stanza escopo-proxy dentro de um defintion xml feijão para o feijão que os proxies necessidade, mas acontece que isso não parece dar-me AOP-aconselhamento
. acrescentando Eu também tentei.
Eu tenho um muito de feijão com interfaces mas apenas um conselho AoP (bem definida) necessidade punhado, e os proxies estão atrapalhando meus stacktraces grande momento. (Eu espiei na mola 3.0 e suspeito que vai ser possível lá, mas parece que é um tempo de distância).
Isso é possível em 2.5.x?
Solução
Como pode ser visto na linha AbstractAdvisorAutoProxyCreator.java 67 (Primavera 2.5.6), o criador autoproxy realmente só faz o que eu pedir para ele. Não faz autoproxy mais do que ele acha necessário.
Acontece que é o tipo de expressão pointcut você usa muito influências quanto proxy esta classe faz; a anotação que eu estava usando era
@Around(value="@target(myannotation)")
Isto significa basicamente primavera gera um proxy que decide interceptar com base no tipo do alvo invocação real. A desvantagem desta situação é que tentativas de mola de fazer isso com todas feijão disponíveis no ApplicationContext. Se eu estivesse usando algo como @ dentro em vez disso, primavera estaria usando a interface para decidir se autoproxying deve ocorrer, e isso pode estaticamente ser determinada no momento em que o ApplicationContext é construído.
Então agora eu só tenho duas classes que são proxies;)