mexdao.setStatus(Status.REQ);
try {
if (p2pProcesses != null && p2pProcesses.size() != 0) {
/* P2P (process-to-process) invocation, special logic */
// First, make a copy of the original request message
MessageDAO request = mexdao.getRequest();
// Then, iterate over each subscribing process
for (ODEProcess p2pProcess : p2pProcesses) {
// Clone the request message for this subscriber
MessageDAO clone = mexdao.createMessage(request.getType());
clone.setData((Element) request.getData().cloneNode(true));
clone.setHeader((Element) request.getHeader().cloneNode(true));
// Set the request on the MEX to the clone
mexdao.setRequest(clone);
// Send the cloned message to the subscribing process
invokeP2P(p2pProcess, partnerEndpoint.serviceName, operation, mexdao);
}