Appendix F. Apache CXF Message Processing Phases


Inbound phases

Table F.1, “Inbound message processing phases” lists the phases available in inbound interceptor chains.
Table F.1. Inbound message processing phases
PhaseDescription
RECEIVEPerforms transport specific processing, such as determining MIME boundaries for binary attachments.
PRE_STREAMProcesses the raw data stream received by the transport.
USER_STREAM
POST_STREAM
READDetermines if a request is a SOAP or XML message and builds adds the proper interceptors. SOAP message headers are also processed in this phase.
PRE_PROTOCOLPerforms protocol level processing. This includes processing of WS-* headers and processing of the SOAP message properties.
USER_PROTOCOL
POST_PROTOCOL
UNMARSHALUnmarshals the message data into the objects used by the application level code.
PRE_LOGICALProcesses the unmarshalled message data.
USER_LOGICAL
POST_LOGICAL
PRE_INVOKE 
INVOKEPasses the message to the application code. On the server side, the service implementation is invoked in this phase. On the client side, the response is handed back to the application.
POST_INVOKEInvokes the outbound interceptor chain.

Outbound phases

Table F.2, “Inbound message processing phases” lists the phases available in inbound interceptor chains.
Table F.2. Inbound message processing phases
PhaseDescription
SETUPPerforms any set up that is required by later phases in the chain.
PRE_LOGICALPerforms processing on the unmarshalled data passed from the application level.
USER_LOGICAL
POST_LOGICAL
PREPARE_SENDOpens the connection for writing the message on the wire.
PRE_STREAMPerforms processing required to prepare the message for entry into a data stream.
PRE_PROTOCOLBegins processing protocol specific information.
WRITEWrites the protocol message.
PRE_MARSHALMarshals the message.
MARSHAL
POST_MARSHAL
USER_PROTOCOLProcess the protocol message.
POST_PROTOCOL
USER_STREAMProcess the byte-level message.
POST_STREAM
SENDSends the message and closes the transport stream.
Important
Outbound interceptor chains have a mirror set of ending phases whose names are appended with _ENDING. The ending phases are used interceptors that require some terminal action to occur before data is written on the wire.
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.