> Thanks Dan, > > But if you look at UserServiceImpl class, it is annotated with @Service, > so it participates in context component scan and spring creates this bean, > right? > > Let me know if i am not making you clear on this. > > FYI.. i am using SOAPUI client to invoke this webservice (UserServiceImpl > ) for testing. > > Raj > > > On Wed, Mar 13, 2013 at 11:25 PM, Daniel Kulp <[email protected]> wrote: > >> >> >> How are you creating the UserServiceImpl instance? AKA: how are you >> publishing the endpoint? >> >> For the aspects to work, spring has to create the bean. If you just >> pass a classname into CXF, we'll just do a "newInstance" on it and get a >> basic object. Thus, you would need to have spring create it (<bean >> class="…" id="name"/>) and then reference that spring created bean. >> >> Hope that helps. >> >> Dan >> >> >> >> On Mar 13, 2013, at 11:50 AM, Rajagopal Chowdary Yendluri < >> [email protected]> wrote: >> >> > Hi, >> > >> > >> > Here is the scenario i am trying. >> > >> > 1. when an exception thrown from a web service i want to invoke an >> aspect >> > which is sending a mail to a mailing list. >> > >> > Here is the steps which i tried. >> > >> > 1. Added AspectJ support in applicaiton context by adding the following >> > line. >> > >> > *<aop:aspectj-autoproxy/>* >> > >> > 2. Written a new Aspect as following: >> > >> > >> > @Aspect >> > @Component >> > public class ExceptionMailer{ >> > >> > @AfterThrowing(pointcut="execution(* com.mycompany.*..impl.*.*(..))", >> > throwing ="ex") >> > public void sendExceptionMail(JoinPoint joinPoint) { >> > System.out.println(" Sending Email .....................again "); >> > } >> > } >> > >> > >> > 3. Here is my WebService class. >> > >> > package com.mycompany.common.services.impl; >> > @WebService(endpointInterface = >> > "com.mycompnay.common.services.UserService",serviceName="UserDetails") >> > @Service >> > public class UserServiceImpl implements UserService { >> > >> > public List<User> getUserDetails(String userId) throwsException { >> > >> > try { >> > throw new Exception("Msg Exception ...."); >> > } catch (Exception e) { >> > throw new Exception("xcepiton"); >> > } >> > } >> > @PostConstruct >> > public void init() { >> > >> SpringBeanAutowiringSupport.processInjectionBasedOnCurrentContext(this); >> > } >> > } >> > >> > When i create a seperate project with the same pointcout and with the >> same >> > package structure it is working good, but not with CXF. >> > >> > Is there any way / we need to tell CXF, that i am using AspectJ AOP. >> > It is not throwing any exception, it is silently ignoring the Aspect. >> > >> > >> > -- >> > Regards, >> > Rajagopal Yendluri(Raj) >> >> -- >> Daniel Kulp >> [email protected] - http://dankulp.com/blog >> Talend Community Coder - http://coders.talend.com >> >> > > > -- > Regards, > Rajagopal Yendluri(Raj) >
-- Regards, Rajagopal Yendluri(Raj)
