При использовании JCo (3.x) для чтения IDOC, отправленных с сервера SAP, какое действие следует предпринять, чтобы указать, что сообщение было получено правильно (т.е. зафиксировано)?
В Java я представляю что-то вроде:
public class MyHandler implements JCoIDocHandler {
public void handleRequest(JCoServerContext serverCtx, IDocDocumentList documentList) {
IDocDocumentIterator iterator = documentList.iterator();
while (iterator.hasNext()) {
IDocDocument doc = iterator.next();
// some processing
}
// here I would like to say COMMIT
// i.e., I confirm all the documents have been read
// and our side takes ownership
}
}
Этот тип фиксации кажется необходимым, если мы хотим убедиться, что ни одно сообщение (IDOC) не потеряно, даже если пуля попадает в ЦП во время какого-либо вызова .hasNext()
. Или я не прав?