Hi ! I use servicemix ESB (apache-servicemix-3.3.1.20-fuse) and cxf-bc component.
Use of cxf 2.2.5 jar causes a NULL Pointer Exception during the execution of my application not with 2.1.8. However, the NPE does not appear to affect the smooth running of the application. I post logs with exception and my CXF-BC xbean config. Hoping that this will be useful, Thanks. Logs ---- ID: 1 Address: http://myHost:8080/alfresco/api/ArchivageDossier Encoding: UTF-8 Content-Type: text/xml Headers: {Accept=[*/*], SOAPAction=[""]} Payload: <soap:Envelope xmlns:soap ="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><wsse:Security xmlns:wsse ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" soap:mustUnderstand="1"><wsu:Timestamp xmlns:wsu ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id ="Timestamp-2"><wsu:Created>2009-12-07T13:12:21.006Z</wsu:Created><wsu:Expires>2009-12-07T13:17:21.006Z</wsu:Expires></wsu:Timestamp><wsse:UsernameToken xmlns:wsse ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id ="UsernameToken-1"><wsse:Username>myUser</wsse:Username><wsse:Password Type ="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">TICKET_aaaaaaaaaaaaaaaaaaaaaaaa</wsse:Password></wsse:UsernameToken></wsse:Security></soap:Header><soap:Body><urn:archiverDossier xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn ="urn:webservices.alfresco.etnic.be" soapenv:encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"> <in0 xmlns:soapenc ="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:type ="soapenc:string">?</in0> </urn:archiverDossier></soap:Body></soap:Envelope> -------------------------------------- WARN - PhaseInterceptorChain - Interceptor has thrown exception, unwinding now java.lang.NullPointerException at org.apache.cxf.ws.policy.AbstractPolicyInterceptor.getBindingFaultInfo(AbstractPolicyInterceptor.java:71) at org.apache.cxf.ws.policy.PolicyVerificationInFaultInterceptor.handle(PolicyVerificationInFaultInterceptor.java:95) at org.apache.cxf.ws.policy.AbstractPolicyInterceptor.handleMessage(AbstractPolicyInterceptor.java:45) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236) at org.apache.servicemix.cxfbc.CxfBcProviderMessageObserver.onMessage(CxfBcProviderMessageObserver.java:125) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2177) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2057) at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1982) at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47) at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188) at org.apache.servicemix.cxfbc.CxfBcProvider.process(CxfBcProvider.java:230) at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:540) at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:492) at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46) at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:623) at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:183) at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167) at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) CXF-BC - xbean config --------------------- <cxfbc:provider wsdl="http://myHost/alfresco/api/ArchivageDossier?wsdl" locationURI="http://myHost:8080/alfresco/api/ArchivageDossier" service="ged:ArchivageDossierService" endpoint="ArchivageDossier" useJBIWrapper="false" useSOAPEnvelope="true"> <cxfbc:outInterceptors> <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor" /> <ref bean="saajout" /> <ref bean="TimestampUserNameToken_Request" /> <ref bean="GedInterceptor" /> </cxfbc:outInterceptors> <cxfbc:outFaultInterceptors> <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor" /> </cxfbc:outFaultInterceptors> </cxfbc:provider> <bean id="myPasswordCallback" class ="be.etnic.janus.work.ged.GedCallBackHandler"> <constructor-arg index="0" value="ged_ticket_space" /> </bean> <bean class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor" id="TimestampUserNameToken_Request"> <constructor-arg> <map> <entry key="action" value="UsernameToken Timestamp" /> <entry key="passwordType" value="PasswordText" /> <entry key="user" value="" /> <entry key="passwordCallbackRef"> <ref bean="myPasswordCallback" /> </entry> </map> </constructor-arg> </bean> <bean class="be.etnic.janus.work.ged.GedSecurityInterceptor" id ="GedInterceptor" /> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" id="saajout" /> </beans>
