[weld-issues] [JBoss JIRA] Created: (WELD-314) Interceptors applied twice on beans when there is a decorator
Wayne Zhang (JIRA)
jira-events at lists.jboss.org
Tue Nov 24 02:22:29 EST 2009
Interceptors applied twice on beans when there is a decorator
-------------------------------------------------------------
Key: WELD-314
URL: https://jira.jboss.org/jira/browse/WELD-314
Project: Weld
Issue Type: Bug
Components: Interceptors and Decorators
Affects Versions: 1.0.0.GA
Environment: Os: Linux
AppServer: Glassfish v3 b73
Reporter: Wayne Zhang
Interceptors applied twice when there is a decorator. The following log is from a example application. Bean SimplePaymentService has two interceptors - AuditInterceptor and TransactionInterceptor. Also, SimplePaymentService has a decorator - SecurePaymentService. When business method pay() is called, these 2 interceptors called twice: (Example application in a NetBeans 6.8 project attached)
[#|2009-11-24T14:29:03.887+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,885 - INFO weld.lab1.interceptor.TransactionInterceptor - Start transaction for weld.lab1.service.SimplePaymentService_$$_javassist_384, instance=weld.lab1.service.SimplePaymentService at 1b5adb0
|#]
[#|2009-11-24T14:29:03.888+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,887 - INFO weld.lab1.interceptor.AuditInterceptor - Method public boolean weld.lab1.service.SimplePaymentService.pay(java.lang.String,java.math.BigDecimal) throws java.lang.Exception on Bean class org.jboss.interceptor.proxy.AbstractClassInterceptionHandler$DelegatingInvocationContext invoked.
|#]
[#|2009-11-24T14:29:03.888+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,888 - INFO weld.lab1.service.SecurePaymentService - I'm a secure payment service
|#]
[#|2009-11-24T14:29:03.888+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,888 - INFO weld.lab1.interceptor.TransactionInterceptor - Start transaction for weld.lab1.service.SimplePaymentService_$$_javassist_384, instance=weld.lab1.service.SimplePaymentService at 1b5adb0
|#]
[#|2009-11-24T14:29:03.888+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,888 - INFO weld.lab1.interceptor.AuditInterceptor - Method public boolean weld.lab1.service.SimplePaymentService.pay(java.lang.String,java.math.BigDecimal) throws java.lang.Exception on Bean class org.jboss.interceptor.proxy.AbstractClassInterceptionHandler$DelegatingInvocationContext invoked.
|#]
[#|2009-11-24T14:29:03.888+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,888 - INFO weld.lab1.service.SimplePaymentService - Pay $0.03 for NetBeans.
|#]
[#|2009-11-24T14:29:03.904+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,904 - INFO weld.lab1.event.PaymentServiceListener - Payment processed: account=NetBeans, amount=0.03
|#]
[#|2009-11-24T14:29:03.905+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,905 - INFO weld.lab1.interceptor.TransactionInterceptor - Transaction commited.
|#]
[#|2009-11-24T14:29:03.905+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,905 - INFO weld.lab1.event.PaymentServiceListener - Payment success: account=NetBeans, amount=0.03
|#]
[#|2009-11-24T14:29:03.905+0800|INFO|glassfishv3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|2009-11-24 14:29:03,905 - INFO weld.lab1.interceptor.TransactionInterceptor - Transaction commited.
|#]
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the weld-issues
mailing list