第 62 章 Apache CXF 消息处理阶段
入站阶段
表 62.1 “入站消息处理阶段” 列出入站拦截器链中可用的阶段。
阶段 | 描述 |
---|---|
接收 | 执行传输特定处理,比如为二进制附加确定 MIME 边界。 |
PRE_STREAM | 处理传输接收的原始数据流。 |
USER_STREAM | |
POST_STREAM | |
READ | 确定请求是否为 SOAP 或 XML 信息,构建会添加正确的拦截器。SOAP 邮件标题也在此阶段处理。 |
PRE_PROTOCOL | 执行协议级别处理。这包括处理 WS-* 标头和 SOAP 消息属性的处理。 |
USER_PROTOCOL | |
POST_PROTOCOL | |
UNMARSHAL | 将消息数据解放到应用程序级别代码使用的对象中。 |
PRE_LOGICAL | 处理未汇总的消息数据。 |
USER_LOGICAL | |
POST_LOGICAL | |
PRE_INVOKE | |
调用 | 将消息传递给应用程序代码。在服务器端,在此阶段调用服务实施。在客户端,响应被移回应用程序。 |
POST_INVOKE | 调用出站拦截器链。 |
出站阶段
表 62.2 “入站消息处理阶段” 列出入站拦截器链中可用的阶段。
阶段 | 描述 |
---|---|
设置 | 在链中执行之后阶段所需的任何集合。 |
PRE_LOGICAL | 对从应用程序级别传递的未汇总的数据执行处理。 |
USER_LOGICAL | |
POST_LOGICAL | |
PREPARE_SEND | 打开连接以在线路上写入消息。 |
PRE_STREAM | 执行所需的处理,以将条目的消息准备到数据流中。 |
PRE_PROTOCOL | 开始处理协议特定信息。 |
写 | 写入协议消息。 |
PRE_MARSHAL | 放大消息。 |
MARSHAL | |
POST_MARSHAL | |
USER_PROTOCOL | 处理协议消息。 |
POST_PROTOCOL | |
USER_STREAM | 处理字节级别消息。 |
POST_STREAM | |
SEND | 发送消息并关闭传输流。 |
出站拦截器链具有一组镜像结束阶段,其名称会附加有 _ENDING
。结束阶段使用拦截器,要求在有线上写入数据前执行一些终端操作。