evt.setAspect(ProcessMessageExchangeEvent.PARTNER_FAULT); responseChannel.onFault(); break; case RESPONSE: evt.setAspect(ProcessMessageExchangeEvent.PARTNER_OUTPUT); responseChannel.onResponse(); break; case FAILURE: evt.setAspect(ProcessMessageExchangeEvent.PARTNER_FAILURE); responseChannel.onFailure(); break;
public void reply2(final PartnerLinkInstance plinkInstnace, final String opName, final String mexId, Element msg, QName fault, boolean failure, final String mexRef) throws FaultException { // prepare event ProcessMessageExchangeEvent evt = new ProcessMessageExchangeEvent(); evt.setMexId(mexId); evt.setOperation(opName); evt.setPortType(plinkInstnace.partnerLink.myRolePortType.getQName()); MessageExchangeDAO mex = _dao.getConnection().getMessageExchange(mexRef); MessageDAO message = mex.createMessage(plinkInstnace.partnerLink.getMyRoleOperation(opName).getOutput() .getMessage().getQName()); buildOutgoingMessage(message, msg); MyRoleMessageExchangeImpl m = new MyRoleMessageExchangeImpl(_bpelProcess, _bpelProcess._engine, mex); _bpelProcess.initMyRoleMex(m); m.setResponse(new MessageImpl(message)); if (failure) { mex.setStatus(MessageExchange.Status.FAILURE.toString()); } else if (fault != null) { mex.setStatus(MessageExchange.Status.FAULT.toString()); mex.setFault(fault); evt.setAspect(ProcessMessageExchangeEvent.PROCESS_FAULT); } else { mex.setStatus(MessageExchange.Status.RESPONSE.toString()); evt.setAspect(ProcessMessageExchangeEvent.PROCESS_OUTPUT); } doAsyncReply(m); // send event sendEvent(evt); }
evt.setOperation(operation.getName()); evt.setPortType(partnerLink.partnerLink.partnerRolePortType.getQName()); evt.setAspect(ProcessMessageExchangeEvent.PARTNER_INPUT);