Hi Freeman, o.k. I will try that. Do I have to add the OutInterceptors in the way:
@OutInterceptors... or here: message.getInterceptorChain().add(new SAAJOutInterceptor()); ... ?? Is there any documentation on that? - Josef Freeman Fang <[EMAIL PROTECTED]> 05.09.2008 11:31 Bitte antworten an [email protected] An [email protected] Kopie Thema Re: Antwort: Re: WS-Client throws Exception in WSS4JInInterceptor Hi Josef, You should add WSS4JOutInterceptor and SAAJOutInterceptor for your server side as well. Regards Freeman [EMAIL PROTECTED] wrote: > Hi Freeman, > > no as I understand we did not add OutInterceptors on the ServerSide: > > We use EJB3.0 and the WSImpl class looks like: > > @Stateless > @WebService(name="MyWS", serviceName="MyService", portName="ZielPort") > @InInterceptors(interceptors={ myPath.WSSecurityInterceptor" }) > public class MyWSImpl implements MyWSInterface { > > The myPath.WSSecurityInterceptor class adds the Interceptors in the way: > > message.getInterceptorChain().add(new SAAJInInterceptor()); > ... > > Is this o.k.? > > -Josef > > > > > > Freeman Fang <[EMAIL PROTECTED]> > 05.09.2008 11:01 > Bitte antworten an > [email protected] > > > An > [email protected] > Kopie > > Thema > Re: WS-Client throws Exception in WSS4JInInterceptor > > > > > > > One quick question, did you also add WSS4JOutInterceptor and > SAAJOutInterceptor for your server side? > > Regards > Freeman > > [EMAIL PROTECTED] wrote: > >> Hi, >> >> we use UsernameToken and Signature in our WS-Security Secenario. >> >> For the Client we add SAAJOutInterceptor (because of Apache CXF 2.0.x) >> > and > >> WSS4JOutInterceptor as additional OutInterceptors. () >> For the Server we add SAAJInInterceptor (because of Apache CXF 2.0.x), >> WSS4JInInterceptor and ValidateUserTokenInterceptor(own Implementation) >> > as > >> InInterceptors. >> >> The client puts all necessary information into the request, as far as I >> understand the data in my TCP/IP Monitor. The server processes the >> > Request > >> and I see no errors in WSSecurityEngine, WSS4jInInterceptor etc. The >> server sends a HTTP/1.1 200 OK back to the client. And now the client >> throws an error: >> >> INFO: Interceptor has thrown exception, unwinding now >> org.apache.cxf.binding.soap.SoapFault: Request does not contain required >> > > >> Security header. >> at >> >> > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInInterceptor.java:150) > >> at >> >> > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInInterceptor.java:60) > >> at >> >> > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207) > >> at >> org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:395) >> at >> >> > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1932) > >> at >> >> > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1790) > >> at >> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66) >> at >> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:576) >> at >> >> > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) > >> at >> >> > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207) > >> at >> > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254) > >> at >> > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:205) > >> at >> org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73) >> at >> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135) >> >> I checked the code of WSS4JInInterceptor and I see wsResult == null, >> because >> wsResult = >> secEngine.processSecurityHeader(doc.getSOAPPart(), actor, cbHandler, >> reqData >> .getSigCrypto(), reqData.getDecCrypto()); >> is null as well. >> >> I don't understand why the client calls this InInterceptor ??? >> >> -Josef >> BGS Beratungsgesellschaft >> Software Systemplanung AG Niederlassung Rhein/Main >> Robert-Koch-Straße 41 >> 55129 Mainz >> Fon: +49 (0) 6131 / 914-0 >> Fax: +49 (0) 6131 / 914-400 >> www.bgs-ag.de Geschäftssitz Mainz >> Registergericht >> Amtsgericht Mainz >> HRB 62 50 >> Aufsichtsratsvorsitzender >> Klaus Hellwig >> Vorstand >> Hanspeter Gau >> Hermann Kiefer >> Nils Manegold >> >> >> >> > > > > BGS Beratungsgesellschaft > Software Systemplanung AG > > > > > Niederlassung Rhein/Main > Robert-Koch-Straße 41 > 55129 Mainz > Fon: +49 (0) 6131 / 914-0 > Fax: +49 (0) 6131 / 914-400 > www.bgs-ag.de > Geschäftssitz Mainz > Registergericht > Amtsgericht Mainz > HRB 62 50 > > Aufsichtsratsvorsitzender > Klaus Hellwig > Vorstand > Hanspeter Gau > Hermann Kiefer > Nils Manegold > > > BGS Beratungsgesellschaft Software Systemplanung AG Niederlassung Rhein/Main Robert-Koch-Straße 41 55129 Mainz Fon: +49 (0) 6131 / 914-0 Fax: +49 (0) 6131 / 914-400 www.bgs-ag.de Geschäftssitz Mainz Registergericht Amtsgericht Mainz HRB 62 50 Aufsichtsratsvorsitzender Klaus Hellwig Vorstand Hanspeter Gau Hermann Kiefer Nils Manegold
