Can't define cxf interceptors
mbsakho Mar 20, 2013 2:46 PMHi all,
I'm having trouble while trying to define cxf interceptors.
I've created a very simle Interceptor which extends the AbstractSoapInterceptor just like below:
public class MyPhaseInterceptor extends AbstractSoapInterceptor { public MyPhaseInterceptor() { super(Phase.INVOKE); // TODO Auto-generated constructor stub } @Override public void handleMessage(SoapMessage arg0) throws Fault { // TODO Auto-generated method stub }
I've defined the interceptors in my endpoint inside the jboss-cxf.xml file just like below:
<jaxws:endpoint xmlns:tns="http://societedecaution.fr/wsdl/service/jv/casden/caution/v1" id="cadenCautionSA" serviceName="tns:CasdenCautionSAService" endpointName="tns:ICasdenCautionSARemotePort" address="http://localhost:8080/jv/CasdenCautionSAService" implementor="fr.societedecaution.wsdl.service.jv.casden.caution.v1.impl.CasdenCautionSARemoteImpl" publish="true" wsdlLocation="/WEB-INF/wsdl/casdencautionsingle.wsdl"> <jaxws:invoker> <bean class="org.jboss.wsf.stack.cxf.JBossWSInvoker" /> </jaxws:invoker> <jaxws:features> <bean class="org.apache.cxf.feature.LoggingFeature" /> </jaxws:features> <jaxws:inInterceptors> <bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <bean class="fr.casden.interceptors.MyPhaseInterceptor" /> </jaxws:inInterceptors> </jaxws:endpoint>
but when I deploy my application, I'm getting errors below:
Caused by: java.lang.ClassNotFoundException: org.apache.cxf.phase.AbstractPhaseInterceptor from [Module "deployment.jv.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
java.lang.NoClassDefFoundError: org/apache/cxf/binding/soap/interceptor/AbstractSoapInterceptor
at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.7.0_11]
at java.lang.ClassLoader.defineClass(ClassLoader.java:791) [rt.jar:1.7.0_11]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) [rt.jar:1.7.0_11]
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:327)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:391)
As if the cxf module does not contains the AbstractSoapInterceptor class.
does someone has any idea of what's going wrong in my configuration?
Thanks in advance.
Massai