The orderRejected pipeline chain processes a rejection of a given order. When an approver submits her rejection of an order via a form using the ApprovalFormHandler, the form handler’s handleRejectOrder() method executes the orderRejected pipeline chain. The pipeline chain’s transaction mode is TX_REQUIRED.
The following list describes each processor in the pipeline chain:
PipelineLink name:
addApproverIdToOderForRejectionThis processor adds the profile ID for the approver who rejected the order to the order’s
approverIdsproperty. TheapproverIdsproperty contains a list of approvers who have approved or rejected the order.Transactional mode: TX_MANDATORY
Nucleus component:
/atg/commerce/approval/processor/AddApproverIdToOrderPipelineProcessor object:
atg.b2bcommerce.approval.processor.ProcAddApproverIdToOrderTransitions: Return value of 1 executes
addApproverMessagesToOrderForRejectionnext.PipelineLink name:
addApproverMessagesToOrderForRejectionThis processor adds the message that the approver attaches to the order to the list of messages in the order’s
approverMessagesproperty. The message typically indicates the reason for rejection. It is passed to theorderRejectedchain by theApprovalFormHandlerform handler, which is used to process the rejection.Transactional mode: TX_MANDATORY
Nucleus component:
/atg/commerce/approval/processor/AddApproverMessagesToOrderPipelineProcessor object:
atg.b2bcommerce.approval.processor.ProcAddApproverMessagesToOrderTransitions: Return value of 1 executes
sendApprovalUpdateMessageForRejectionnext.PipelineLink name:
sendApprovalUpdateMessageForRejectionThis processor sends an
ApprovalUpdatemessage that includes the order requiring approval and the profile repository item for the customer associated with the order to both the/Approval/ApprovalUpdateJMS message queue and the/Approval/ScenariosJMS message topic. TheapprovalStatusproperty of the message is set to “rejected”. TheApprovalCompleteServicelistens for the message sent to the/Approval/ApprovalUpdate JMS message queue. The message sent to/Approval/Scenarioscan be used to execute scenarios.Transactional mode: TX_MANDATORY
Nucleus component:
/atg/commerce/approval/processor/SendApprovalUpdateMessagePipelineProcessor object:
atg.b2bcommerce.approval.processor.ProcSendApprovalMessageTransitions: None. This is the last processor in the pipeline, which causes the
ApprovalPipelineManagerto return to the caller.

